1、2018/10/18,1,第 1 章 绪 论主讲:闫新庆201202,操作系统第1讲,2018/10/18,2,操作系统体系结构 现状与进展2012-02,10,计算技术和设备的发展,年代,物理世界的 信息流,计算和存储,产品交互性,主 机,小型机,工作站,PC,笔记本,PDA,60,70,80,90,50,00,传感器网络节点,Internet,HTML,SOAP/WSDL/UDDI,Any timeAny whereAny device,跨互联网 松散耦合 协同工作 资源共享,互连 互通 互操作,2018/10/18,5,一、现代操作系统进展(1),操作系统今非昔比 对象、应用、软硬件结构
2、变了 操作系统走下神坛 从计算机智能信息终端 操作系统的庞大家族 家族的联姻与分化,2018/10/18,6,一、现代操作系统进展(2),1. 操作系统今非昔比 对象在变(各行各业) 应用在变 核心与外围,多元、海量、高速、高性能 可配置,可拆卸,可剪裁,可替换 软件结构 重用,安装、配置 OS工具箱,服务组件,虚拟 硬件结构 单CPU,单核,多CPU,多核, 硬件OS,硬件线程 OS结构、功能、性能、组件、算法、机制、接口、界面、安全等都在变化!,2018/10/18,7,一、现代操作系统进展(3),从计算机智能信息终端 从监控程序OS组件式OS 从OSOS工具箱OS平台 OS原有的理论、机
3、制与技术已经广泛应用于数据库、信息系统、移动系统 从神秘抽象实际 人们对OS的理解逐渐深入,基于OS的编程和应用开发蓬勃开展。,2018/10/18,8,一、现代操作系统进展(4),3. 操作系统的庞大家族 高端系统(大型机、阵列机) 专用系统(实时、分布) 桌面系统(个人通用OS) 智能终端系统(个人移动终端、手机) 嵌入系统(智能设备、仪器),2018/10/18,9,二、操作系统知识结构(1),课程学习目标 原理(理论)与工作机制 抽象思维与逻辑推理能力 组成、功能与技术实现 技能与应用,编程开发能力,2018/10/18,10,二、操作系统知识结构(1),1.学生学习应该理解和掌握的问
4、题 操作系统结构中的共性问题和特性问题 操作系统理论与技术的关系 什么是OS中相对稳定的、核心的东西 什么是OS中可变的、特殊的东西 设计者、应用开发者和使用者各自的关注点 系统概念、技术实现与应用开发的关联,2018/10/18,11,二、操作系统知识结构(2),2. 课程内容的重点关联 操作系统的结构(Layer & Structure) 操作系统的资源调度(分配、调度、转接) 操作系统的数据处理(M + D 映像) 操作系统的接口(模式、模型、驱动) 基于操作系统的应用编程(调用+编程) 操作系统的安全性(机制与漏洞),2018/10/18,12,二、操作系统知识结构(3),1)操作系统
5、的结构 应用层:应用程序与服务组件 用户级:系统库(应用行为发生) 内核级:组件(系统行为发生) 调度、存储、I/O、服务、文件、其他 操作系统固件层 硬件抽象层:调用、驱动、BIOS 硬件层:CPU(单核与多核)、芯片组,2018/10/18,13,二、操作系统知识结构(4),对操作系统结构变化的注意 OS软件结构对层次性的支持 OS组件的可配置、安装与拆卸 操作系统服务的概念(应用支持) 用户接口、程序执行、数据存储、I/O操作 通信机制、网络支持、错误检测与处理,2018/10/18,14,二、操作系统知识结构(5),2)操作系统的资源调度 调度:OS的核心(讲课的重点) 支持调度的机理
6、与机制 追踪进程的表格与数据结构 这些表格的访问机制 进程与线程的新概念 处理器、进程、线程间的相互关系和行为 软件线程与硬件线程的区别与关联 多线程、超线程技术,2018/10/18,15,二、操作系统知识结构(6),3)操作系统的数据处理 OS中数据的存储、获取、源与目的地 OS在Memory中的映像 PCB、TCB、Driver、Vector OS在Disk中的映像 文件系统、文件、目录结构 局部访问 配置与拆卸,2018/10/18,16,二、操作系统知识结构(7),4)操作系统的接口 现代OS面临的接口问题 用户二次开发关心的问题 现代I/O处理的不同方式 设备的虚拟性和实在性问题
7、Driver的地位和调用结构,2018/10/18,17,二、操作系统知识结构(8),5)基于操作系统的应用编程 系统资源调用,应用编程调用 以程序方式利用OS提供的调用对系统内部和外部资源进行访问 调用方式与层次: OS服务、系统程序、虚拟化 Syscall、命令调用、API、类库模块(lib)、宏与Unit方式,2018/10/18,18,二、操作系统知识结构(9),6)操作系统安全 操作系统安全与安全操作系统 攻击的首要突破口 系统安全服务(组件) 错误检测(Error detection) 审计(Accounting) 保护(Protection) 安全(Security),2018/
8、10/18,19,学习操作系统课程前的准备,教材、辅助教材与课外参考阅读教材 教材与作者简介 计算机操作系统教程(第3版);张尧学,史美林;清华大学出版社;2006.8 在国内较有影响的辅助教材与作者简介 汤子赢 西安电子科大 陈向群 北京大学 孟 静 中国人民大学 孙玉芳 中国科学院软件研究所 屠立德 清华大学 张昆苍 海洋大学 黄祥喜 中山大学 尤晋元 上海交大 李善平 浙江大学 何炎祥 武汉大学 课外参考教材简介 ,2018/10/18,20,计算机学科与专 业建设的考虑2010-03,2018/10/18,21,中国计算机专业教育的发展,计算机科学与技术本科专业点数的变化 1973年,
9、北京大学、哈工大、清华开办计算机专业 1983年,拥有计算机专业的大学63所 1986年,拥有计算机专业的大学88所 1993年,拥有计算机专业的大学137所 1994年,拥有计算机专业的大学187所,2018/10/18,22,中国计算机专业教育的发展,计算机本科专业点数的变化 2002年,全国有484个本科计算机专业 2003年,有505个本科计算机专业,增加4% (电子信息工程330,机械248自动化243,通信工程238) 2004年,有652个本科计算机专业,增加29% 2005年,有771个本科计算机专业,增加18% 许多是通过“专升本”增加的,2018/10/18,23,中国计算
10、机专业教育的发展,2009年计算机科学与技术学生情况 本科:毕业90094,招生91908,在校生440318(675人/点)2003年在校生27万(占理工生14.6%) 近几年新增加的专业点对这个招生量贡献很大 现象 学生专业自豪感下降 招生:不再是最高分学生的集中首选 就业:不再是“皇帝的女儿”虽然就业还是最好的之一,2018/10/18,24,现象与声音现象,Wirth:84年Turing奖得主 软硬件开发是一回事:原理、方法都相同 成功之路:第一是学好基本知识和理论,第二是要真正学懂它 部分大学里:在美国,教师轻松学生累,在中国,教师辛苦学生轻松; 目前的应用水平不是很高,2018/1
11、0/18,25,现象与声音来自企业的声音,毕业生三大主要缺点:独立解决问题的能力;责任心;基本的抽象分析问题的能力 头三位的专业技能:编程、数据结构、算法 应该具有扎实的理论基础,特别是理论结合实际的能力 数学基础、建模能力等将决定一个计算机专业人才的发展前景。这些能力应该在基础课中得到训练,在实践教学中得到升华,2018/10/18,26,现象与声音来自毕业生的声音,计算机核心技术没有明显突破,这与计算机人才的理论基础薄弱、特别是理论与实际相结合的能力不强有直接关系 学好操作系统、离散数学、数据结构、编译原理这四门计算机专业的主干课,对自己的可持续发展是至关重要的,可惜这样的体会在工作中才得
12、出(算法、组成原理、DBS原理),2018/10/18,27,现象与声音来自教育专家的声音,学生思想活跃、接受能力强、见识较广企业和高校在“素质”教育内涵上有较大的差异:以学习能力为代表的发展潜力最被企业看中企业要求人才能够学习他人的长处,但是 相当一部分学生“以我为中心、盲目自以为是”,2018/10/18,28,现象与声音来自教育专家的声音,“考研比例”作为办学效果的突出指标、学风问题使得应试教育正在侵蚀大学教育 要追求办学的特色,注重学科品牌 重视质量 踏踏实实、摒弃浮躁 如何提高教育质量?,2018/10/18,29,中国计算机专业教育的发展,教育部认定的计算机相关专业 计算机科学与技
13、术 软件工程 计算机软件 网络工程 信息安全 电子商务 信息与计算科学(400余个专业点) 智能科学与技术 ,2018/10/18,30,计算机科学家,研发技术人员,信息化服务技术人员,计算机应用者,重叠区,我是搞 计算机的!,2018/10/18,31,美国劳工部统计局: 2004-2014增长(计算机类职业(353.7万人),计算机程序员(-):(编写,测试和维护计算机程序)(45.5万人) 计算机科学家与数据库管理人员(+): (50.7万人) 网络系统与数据通信分析员:(设计,测试与评估企业的信息系统)(23.1万人) 数据库管理员:(组织与管理数据)(10.4万人) 计算机科学家:(
14、理论研究,创造新技术、新工具)(2.2万人) 其它(14.9万人) 计算机软件工程师(+): (80.0万人) 应用软件工程师:(分析用户需求;设计,构建与维护应用软件)(46.0万人) 系统软件工程师:(协调企业计算机系统的构建与维护,规划未来发展)(34.0万人) 计算机支持专业人员与系统管理员(79.6万人) 技术支持专业人员(+):(为用户提供技术支持,接待咨询)(51.8万人) 网络与计算机系统管理员(+):(设计,安装与维护企业的网络环境)(27.8万人) 计算机系统分析员(+):(应用计算机技术满足企业的个性需要)(48.7万人) 计算机硬件工程师: (研究,设计,开发与测试计算
15、机硬件,并负责其制造与安装) (7.7万人),2018/10/18,32,美国劳工部统计局: 2004-2014增长 (其它与计算机相关的职业109.7万人),计算机与信息系统管理人员(+)(规划,协调与指导企业中与计算机相关的活动的研究与设计) (28.0万人) 管理职业类 计算机操作员(- -) (监控计算机硬件设备正常安全运行) (14.9万人) 办公支持类 信息输入与信息处理人员 (-) (数据输入与文字处理) (52.5万人) 办公支持类 数字设备控制与造作人员(-) (调整与控制数字控制设备) (14.3万人) 制造业类,2018/10/18,33,美国劳工部统计局: (20094
16、-2014增长最多的职位),网络系统与数据通信分析员 第 2 位: 增加54.6%; 主要为学士 计算机软件工程师, 应用 第5位: 增加48.8%; 主要为学士 计算机软件工程师, 系统工程师 第8位: 增加43.0%, 主要为学士,网络与计算机系统管理员 第11位: 增加38.4%, 主要为学士 数据库管理员 第12位: 增加38.2%, 主要为学士 计算机系统分析员 第25位: 增加31.4%, 主要为学士,2018/10/18,34,计算机专业毕业生的去向,研究人员-discoverer 重在创新,包括科学和技术研究 工程技术人员-implementer 重在制造 信息系统技术人员-i
17、ntegrator 重在建立和管理(信息系统),2018/10/18,35,学科建设与学生就业的关系,技术学科发展的根本动力是社会需求 就业状况是社会需求的一种度量 学科发展的内涵应该反映社会的需要 计算机核心技术没有明显突破,这与计算机人才的理论基础薄弱、特别是理论与实际相结合的能力不强有直接关系,2018/10/18,36,计算机不同领域的核心问题,计算机科学 “什么可有被有效的自动计算?” 工程(无论是计算机工程或软件工程) 如何利用已知的科学研究成果(规律)以合理的成本提供高可用性的产品系统 信息技术 任何基于已有的工程技术成果,创建和运行一个信息系统,并满足特定使用环境的需求,201
18、8/10/18,37,需求导向的人才培养,上述三方面的从业人员在基本知识结构、专业素质、基本技能等方面的相同点是基本一样的。 不同点越来越突出,是我们实行分类培养,甚至于建设新专业的推动因素。,2018/10/18,38,计算学科的问题空间,理论原理 创新,应用部署 配置,开发,倾向理论,倾向应用,组织系统行为,应用技术,软件开发,系统平台结构,计算机硬件体系,2018/10/18,39,计算机科学,2018/10/18,40,软件工程,理论原理 创新,应用部署 配置,开发,倾向理论,倾向应用,组织系统行为,应用技术,软件开发,系统平台结构,计算机硬件体系,2018/10/18,41,信息技术
19、,理论原理 创新,应用部署 配置,开发,倾向理论,倾向应用,组织系统行为,应用技术,软件开发,系统平台结构,计算机硬件体系,2018/10/18,42,信息系统,理论原理 创新,应用部署 配置,开发,倾向理论,倾向应用,组织系统行为,应用技术,软件开发,系统平台结构,计算机硬件体系,2018/10/18,43,基于分类培养原则的新规范,已经形成的四个专业规范 计算机工程 计算机科学 软件工程 信息技术(暂定名) 分类不应该被理解为有高低之分的“分流”,2018/10/18,44,计算机科学/计算机工程的培养目标,专业素质: 掌握科学思维方法和科学研究方法;具备求实创新意识和严谨的科学素养;具有
20、一定的工程意识和效益意识。 专业能力: 自学能力、信息获取与表达能力等。 系统级的认知能力和理论与实践能力,掌握自底向上和自顶向下的问题分析方法,既能把握系统各层次的细节,又能认识系统总体;既掌握本学科的基础理论知识,又能利用理论指导实践。 创造性思维能力、创新实验能力、科技开发能力、科学研究能力以及对新知识、新技术的敏锐性。,2018/10/18,45,计算机工程知识体系结构,CE-ALG 算法与复杂度 CE-CAO 计算机体系结 构和组织 CE-CSE 计算机系统工程 CE-CSG 电路和信号 CE-DBS 数据库系统 CE-DIG 数字逻辑 CE-DSP 数字信号处理 CE-ELE 电子
21、学 CE-ESY 嵌入式系统,CE-HCI 人机交互 CE-NWK 计算机网络 CE-OPS 操作系统 CE-PRF 程序设计基础 CE-SPR 社会和职业问题 CE-SWE 软件工程 CE-VLS VLSI设计与构造 CE-DSC 离散结构 CE-PRS 概率和统计,2018/10/18,46,计算机科学知识体系结构,CS-AR计算机体系结构与组织 CS-AL算法与复杂性 CS-HC人机交互 CS-OS操作系统 CS-PF程序设计基础 CS-SP社会与职业问题 CS-SE软件工程,CS-DS离散结构 CS-NC以网络为中心的计算 CS-PL程序设计语言 CS-GV图形学与可视化计算 CS-I
22、S智能系统 CS-IM信息管理 CS-CN数值计算科学,2018/10/18,47,软件工程方向的培养目标,专业素质: 掌握科学思维方法、工程设计方法,具备良好的工程素养;具有创新、创业精神;具有严谨的科学态度和务实的工作作风。 专业能力: 获取知识能力:终身学习能力、信息获取能力、适应学科发展的能力等。 应用知识能力:需求分析和建模的能力、软件设计和实现的能力、软件评审与测试的能力、软件过程改进与项目管理的能力、设计人机交互界面的能力、使用软件开发工具的能力等。 创新能力:在基础研发、工程设计和实践等方面具有一定的创新意识和能力。,2018/10/18,48,软件工程知识体系结构,SE-CM
23、P 计算基础 SE-FND 数学和工程基础 SE-PRF 职业实践 SE-MAA 软件建模与分析 SE-DES 软件设计,SE-VAV 软件验证与确认 SE-EVO 软件进化 SE-PRO 软件过程 SE-QUA 软件质量 SE-MGT 软件管理,2018/10/18,49,信息技术的培养目标,专业素质: 能鉴别和评价当前流行的和新兴的技术,根据用户需求评估其适用性 能分析技术对个人,组织,社会带来的影响,包括伦理,法律和政策等各方面问题 深刻理解成功的经验和标准,并能运用 专业能力: 对信息技术领域的核心技术和概念能熟练运用 为解决个人和组织机构所面临的问题,能系统地分析、确定和阐明用户的需
24、求 能设计高效实用的信息技术解决方案,并善于将该解决方案和用户环境整合,2018/10/18,50,信息技术知识体系结构,IT-ITF 信息技术基础 IT-PF 程序设计基础 IT-PT 平台技术 IT-NET 计算机网络 IT-IM 信息管理 IT-IPG 整合编程技术,IT-WS WEB系统与技术 IT-HCI 人机交互 IT-IAS 信息安全 IT-SA 系统管理与维护 IT-SIA 系统集成与架构 IT-SP 社会和职业学,2018/10/18,51,计算机专业领域的竞争力,专业竞争力的内容: 意识知识能力技能意识的培养贯穿教学全过程 研究制造集成 用户概念,2018/10/18,52,今后我们应该注意些什么!,重视理论基础的学习? 重视动手能力的培养 重视个人良好素质的培养 重视基础能力的恢复与培养 踏踏实实、摒弃浮躁,2018/10/18,53,谢 谢200902,