版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章,操作系统简介_UNIX/Linux,课程简介,课程目标: 通过本教程的学习,重点培养学生基本软件素养,包括对于操作系统的认识,对于软件工程师任职条件的了解,软件开发文档规范的编写,常用软件过程模型的了解。 课程安排: 第一章:操作系统简介(6课时) 第二章:软件开发中的人员与过程(6课时) 第三章:软件工程文档编写指南(2课时) 第四章:软件过程模型(6课时),本章目标,操作系统概述 UNIX操作系统简介 UNIX下开发语言及环境介绍 Linux操作系统简介 Linux下常用工具,概述,计算机由软件与硬件两部分组成 硬件是计算机的“躯体”,软件是计算机的“灵魂” 操作系统充当计算机软件
2、与硬件的“桥梁”,操作系统是硬件基础上的第一层软件, 是其他软件与硬件直接的接口,操作系统的定义,操作系统(Operating System)是计算机系统中的一个系统软件,是一些程序模块的集合: 它们能以尽量有效、合理的方式组织和管理计算机的软硬件资源; 合理的组织计算机的工作流程; 控制程序的执行并向用户提供各种服务功能; 使得用户能够灵活、方便、有效的使用计算机,使整个计算机系统能高效地运行。 从以上定义中,我们可以从几个角度理解操作系统的功能: 对于硬件:操作系统可以控制硬件; 对于软件:组织、调度、管理软件及资源; 对于用户:提供有效方式供用户方便地控制与使用。,常用操作系统,请同学们
3、列举常用操作系统:,Windows系列操作系统 UNIX系列操作系统 Liunx操作系统 嵌入式操作系统,UNIX操作系统简介,UNIX是历史最悠久的通用操作系统,它诞生于1969年。 它的出现比PC机、微处理器、鼠标及视频显示终端都要早。 UNIX从产生之日到现在一直是服务器操作系统的首选。 UNIX最早用汇编写就,1973年Thompson与Ritchie用C语言重写了整个UNIX系统。,UNIX设计原则,KISS 原则:Keep it simple,stupid 一切皆文件:所有的东西,设备、内存都模拟成文件。共分为5种文件类型: c 字符设备 b 块设备 l 连接 f 普通文件 d 目
4、录,常见UNIX系统IBM AIX系列1,AIX符合Open group的UNIX 98行业标准(The Open Group UNIX 98 Base Brand),通过全面集成对32-位和64-位应用的并行运行支持,为这些应用提供了全面的可扩展性。它可以在所有的IBM p系列和IBM RS/6000工作站、服务器和大型并行超级计算机上运行。 AIX系列UNIX支持广泛的电子商务应用以及深入的科学运算与数据处理能力。 由于IBM是世界上最大的服务器提供商,因此其AIX系列在UNIX市场占有较大份额。,常见UNIX系统IBM AIX系列2,Solaris是由SUN Microsystems公司
5、从BSD Unix移植而来的一种操作系统,它是基于Intel和Sparc处理器的操作系统。SUN公司一直掌握着大型UNIX工作站市场,随着90年代 Internet的发展,SPARC/Solaris系统也被广泛地应用于Web站点上。Sun主要强调自己系统的稳定性,它的设计是面向网络的。 Solaris10操作系统开放源码,可以在SUN网站免费下载。,常见UNIX系统Solaris 1,常见UNIX系统Solaris 2,Mac OS X是由苹果电脑公司(Apple)开发的基于UNIX的操作系统。 Mac OS以其优雅的界面完全打破了UNIX下GUI不友好的常规,使Mac OS成为用户体验最好的
6、操作系统。并且苹果电脑公司的工程师针对不同的标准进行精心设计,内置多种软件,使Mac OS成为用户在工作、娱乐等方面的时尚选择。,常见UNIX系统Mac OS 1,常见UNIX系统 Mac OS 2,文本编辑工具vi,vi是Unix/Linux平台最常用的文本编辑工具,基本任何一款Unix/Linux都内置vi。 vi是一个本文编辑工具,利用它可以执行输出、删除、查找、替换、块操作等众多文本操作,利用丰富而强大vi命令,vi可以完成许多Unix任务,例如文件的创建、修改,邮件的回复,系统配置的调整等 。,Emacs,Emacs是自由软件之父Stallman的作品,Emacs不仅仅是一个编辑器,
7、同时它也是一个非常优秀的集成开发环境。 Emacs的成功之处在于它在无所不包的同时不失可控性,拓展性和稳定性。 作为普通的文本编辑器, Emacs拥有vi编辑器一样强大的功能,支持几乎所有的自然语言,程序语言和所有的编码。不仅仅如此,安装合适的扩展后,它可以作为许多应用程序的前端,使得这些应用程序更为方便。Emacs也可以作为集成编程环境,在众多扩展的配合下,方便地编辑代码,调试程序。 此外 ,Emacs还可以作为网页浏览器,它有自己的终端控制台,它内部有强大的邮件阅读工具,它甚至可以看图片,听音乐。,GCC编译器,GCC最早作为C 程序语言的编译器,随着技术的发展,GCC 它可以通过不同的前
8、端模块来支持各种语言,例如 C 语言,C+语言, Ada 语言,C+ 语言,Java 语言,Objective C 语言,Pascal 语言,COBOL语言等。 另外,GCC 对于各种硬件平台的支持几乎无所不在。几乎所有有点实际用途的硬件平台GCC都能够支持。 通过GCC,程序员能够灵活地控制整个编译过程。在使用GCC编译程序时,程序员可以根据自己的需要让GCC在编译四个阶段(预处理、编译、汇编、链接)的任何阶段结束,以便检查或使用编译器在该阶段的输出信息,或者对最后生成的二进制文件进行控制,以便通过加入不同数量和种类的调试代码来为今后的调试做好准备。 和其它常用的编译器一样,GCC也提供了灵
9、活而强大的代码优化功能,利用它可以生成执行效率更高的代码。,UNIX下常用开发语言及环境,操作系统的一个很重要功能就是提供编程接口,使程序员能够基于操作系统编写应用程序。 UNIX是支持应用程序语言最多的操作系统。 由于Linux基于UNIX,因此,UNIX下编程语言在Linux同样可以应用,并且这些编程语言都具备不同程度的跨平台性。 在本节中,重点介绍:C语言、C+、Shell、Perl、Python、PHP、Java。,C语言,1969-1973 年间,贝尔实验室的 Dennis Richey 和 David Kerningham 开发了 C 语言。 C语言是UNIX的“母语”,整个UNI
10、X平台就是用C语言写就的。 C语言可以看做是UNIX虚拟机的高级汇编器。C语言是既要尽量接近“裸机”,又要保持稳定性的最佳选择,其资源效率接近于汇编语言。 C语言最大的缺点是其内存管理的复杂性,容易造成程序的资源管理困难,内存泄漏,指针失效等难以调试的困难。 由于此语言具有快速和简洁的特点,因此在系统程序员和商业软件制造商之间非常流行。,C+,C+由Stroustrup于1983年发明,C+以C语言为基础,结合simula的面向对象思想,以及Algol的重载特征而形成的一种OOP语言。 C+是一种面向对象的C语言实现,它包含了面向对象的特征,同时保持了对C的兼容性。 C+的最佳之处在于其编译效
11、率以及面向对象和泛型编程的结合。但是其使用复杂,学习成本高。 C+是世界上最流行最成功的语言之一。,Shell,Shell是UNIX中的一种可移植的解释型语言,类似于Windows中的批处理程序。 用Shell编写小型脚本非常快捷方便,但是其脚本依靠大量的辅助命令。 可编程的Shell是UNIX下最具威力的强力工具。,Perl,Perl最初是增强的Shell,用来代替Shell作为混合脚本语言编程的“胶水”使用。 Perl内置对文本,面向行的数据格式的处理功能,支持数据结构,具备一套完备的UNIX API。 发展到现在,Perl成为了一门稳定的跨平台的编程语言,在Internet编程方面,Pe
12、rl几乎无所不能。,Python,Python是一种可用于多种类型软件开发的动态的面向对象的语言,其语法介于C语言与Modula语言之间,语言设计优雅干净,具有出色的模块化特征。其开发效率高,易于学习与使用。 Python标准发布包括大多数网络协议(SMTP、FTP、POP3、IMAP、HTTP)的客户类以及HTML生成器类,因此其在Web开发方面应用广泛。 Python能够在Windows, Linux/Unix, Mac OS X, OS/2甚至嵌入式等多种平台下运行。,PHP,PHP是一种嵌入式HTML脚本语言。它的大多数语法来源于C,也有一部分PHP特性借鉴于Java 和 Perl 。
13、这种语言的目的是让WEB开发人员能够快速高效地写出动态生成的页面。 PHP由于嵌入HTML脚本,与Apache服务器紧密结合,对于数据库的多方位支持,开发效率高,使全免费的Apache + PHP + MySQL组合成为中小型企业动态网站开发主要组合之一。,Java,Java是SUN公司推出的一种编程平台,其设计理念是“write once, run anywhere”,Java通过虚拟机技术实现了跨平台性。 同时,Java是一种纯面向对象的编程语言,同时保持了使用的简单方便。 Java分为J2ME、J2SE、J2EE三个版本。目前Java在企业级应用方面占据大部分市场,在嵌入式开发方面亦实力
14、强劲。,Linux操作系统简介,Linux是一套开放源码的,类UNIX的操作系统。它最早是由芬兰大学生Linus Torvalds在遍布全球的开发者帮助下开发的操作系统。 Linux是一套可以让您在个人计算机上运行的类似 UNIX的操作系统。与Unix不同的是,您不需要使用高阶的工作站,只需要通用个人计算机即可。简而言之,它既有桌面操作系统的易用性,又具备UNIX系统的稳定性。 Linux则是一个完全免费的操作系统,可以网络上下载、复制、使用,同时它的源程序码也完全公开,可发展软件以及硬件周边驱动程序的行列, 使Linux功能和完整性日益壮大。 Linux以其价格低廉、性能稳定、 对Inter
15、net的强有力支持等特性, 成为全球ISP的首选平台。,Linux是一个依照UNIX标准化设计的全新的操作系统,其中没有UNIX代码,所有代码均为重新实现。 Linux并不仅仅是由Linus Torvalds开发的,而是由用Internet连接起来的散布在全球的几千个开发人员以业余时间来完成的。 “Linux团体看起来像一个巨大的有各种不同议程和方法的乱哄哄的集市(Linux归档站点接受任何人的建议和作品,并聪明的加以管理),一个一致而稳定的系统就象奇迹一般从这个集市中产生了。”Eric S Raymond如是介绍。 跟UNIX相比,Liunx更加注重非程序开发者用户, Liunx非常重视图形
16、用户界面, 以此来占领桌面操作系统市场。,Linux设计思想,Red Hat Linux 1,Red Hat Linux由作为全球领先的开放源码和Linux供应商红帽公司(Red Hat)提供,以容易安装,使用方便著称。 Red Hat提供的RPM(Red Hat Package Manager)方便文件的安装与反安装。 Red Hat的开放源码软件为各种硬件和软件整体应用提供了标准的系统平台,并保证充分的可扩展性和高度的安全性,使用户进行关键应用的部署成为可能。,Red Hat Linux 2,红旗 Linux 1,这是由中科红旗软件技术有限公司推出的中文版本的linux,该linux在众多
17、的中国linux用户中占有一定的比例。 由于政府的支持,红旗Linux在中国政府机构的操作系统中占有一定比例。 Red Flag Linux桌面版适用于政府、个人、家庭的办公、学习、娱乐、开发、教育等需求,并致力于应用软件集成、信息通讯、安全性等方面,使之更加人性化,更加方便用户的使用和维护。,红旗 Linux 2,Linux常用工具,Linux是UNIX理念的一种实现方式,UNIX下能用的软件,在Linux下基本都有对应的软件,我们在这里不再重复介绍。Linux对GUI的支持采用的是xWindow,这里只介绍Linux常用GUI中的两种桌面环境。 Linux下也有GUI开发工具,本节中我们介
18、绍GTK+。 与微软的MS Office对应,Linux下的办公套件也有很多,我们在这里对开源软件OpenOffice做简单介绍。,KDE 1,KDE:K桌面环境,是一个用于Linux和Unix图形工作站上的强大的桌面环境。它以其使用方便、现代性和杰出的图形设计与技术优势,使其成为Linux平台上最出名的桌面环境,几乎所有的Linux发布版本都包括KDE运行环境。 KDE它包含了大量的Linux应用程序,甚至象 Windows一样内置了一个文件管理/Web浏览合一的浏览器,其操作也类似于Windows, 使用方便直观。,KDE 2,GNOME 1,GNOME:提供一个桌面环境与一个开发平台。GNOME具备免费、可用、易用、国际化、方便开发、组织性强及支持完善等特点。 GNOME是GNU Network Object Model Environment(GNU,网络对象模型环境)的缩写。GNOME的发展很快,已成为一个强劲的GUI应用程序开发框架,可以在任何一种UNIX系统下运行。 GNOME使用的图形库是GTK+构件库,它是基于LGPL协议的。GNOME的界面与KDE的界面类似,熟悉KDE的用户无需学习就能够使用GNOME。 GNOME是一个集成桌面环境, 也是一个应用程序开发框架, 由很多的函数库组成。,GNOME 2,GTK+,GTK+GIMP工具包是为GNU图象操作程序(简
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年贵州省都匀市高二化学下册期末考试模拟考试卷附完整答案(典优)
- 2026年河南省舞钢市高二化学下册期末考试模拟卷往年题考附答案
- 2026年河南省项城市高二化学下册期末考试模拟试卷(典优)附答案
- 2026年四川省都江堰市高二化学下册期末考试模拟考试卷及一套答案
- 2026年广东省开平市高二化学下册期末考试模拟卷含答案(夺分金卷)
- 2025-2026学年山东省淄博市中考化学最后冲刺浓缩卷(含答案解析)
- 2026年河北省承德市中考联考化学试卷(含答案解析)
- 《课桌有多长》-二年级数学(上)厘米的认识与测量
- 金榜中考物理试题及答案
- 机械类试题及答案大全
- 2026年辽宁锦州海通实业有限公司计划招录28人备考题库及完整答案详解一套
- 2026年保密教育线上培训考试答案汇-总
- 企业管理业务合同
- 2026年广东广州市部分学校中考化学模拟试卷(含答案)
- 2025-2026学年人教版PEP五年级英语下册全册单词表(带音标)
- 2016-2025年考研英语(二)写作试题与范文
- 六年级下语文期末总复习1-6单元押题考点
- 2026汽车线控制动系统功能安全要求与冗余设计报告
- 2026年上海高一信息科技会考总复习知识点详解
- 唐山能源集团招聘笔试题
- 2026学年苏教版小学数学四年级下册(全册)教案、教学计划及进度表新版
评论
0/150
提交评论