UNIT1操作系统导论讲义课程10860.pptx
《UNIT1操作系统导论讲义课程10860.pptx》由会员分享,可在线阅读,更多相关《UNIT1操作系统导论讲义课程10860.pptx(116页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统原理操作系统原理冯耀霖冯耀霖E-mail:课程说明课程说明 理论教学内容理论教学内容(讲义)(讲义)Unit 1操作系统导论操作系统导论8 Unit 2 进程与线程进程与线程8 Unit 3 进程通信进程通信6 Unit 4 进程同步进程同步8 Unit 5 死锁死锁2 Unit 6 实存管理实存管理4 Unit 7 虚存管理虚存管理8 Unit 8 文件管理文件管理10 Unit 9 设备管理设备管理6附:操作系统实验准备知识(自学)附:操作系统实验准备知识(自学)实验内容实验内容本课程的实验平台是本课程的实验平台是Linux操作系统。操作系统。实验实验 1熟悉熟悉Linux环境环境
2、实验实验 2进程的创建与并发执行进程的创建与并发执行(一)(一)实验实验 3进程的创建与并发执行进程的创建与并发执行(二)(二)实验实验 4线程的创建与并发线程的创建与并发 实验实验 5信号与管道通信信号与管道通信实验实验 6线程同步线程同步(一)(一)实验实验 7线程同步线程同步(二)(二)实验实验 8分区内存管理分区内存管理具体内容见具体内容见OS2013_操作系统原理实验操作系统原理实验CPU是计算机系统的心脏,操作系统是计算机系统是计算机系统的心脏,操作系统是计算机系统的大脑。半个多世纪以来,操作系统吸引了世界上一群的大脑。半个多世纪以来,操作系统吸引了世界上一群最热情、最有智慧的杰出
3、人才、集中了人类现代创造性最热情、最有智慧的杰出人才、集中了人类现代创造性思维活动的精髓。操作系统是软件世界的万花筒、博览思维活动的精髓。操作系统是软件世界的万花筒、博览会,是软件王国中的一顶璀璨的皇冠。能够有机会走进会,是软件王国中的一顶璀璨的皇冠。能够有机会走进操作系统这个神奇、复杂而又充满诱惑的大千世界,理操作系统这个神奇、复杂而又充满诱惑的大千世界,理解其中的基本概念、结构和奥妙的管理机制是十分幸运解其中的基本概念、结构和奥妙的管理机制是十分幸运的。的。Unit 1操作系统导论操作系统导论操作系统导论操作系统导论操作系统原理操作系统原理冯耀霖冯耀霖内容内容什么是操作系统什么是操作系统操
4、作系统的形成与发展操作系统的形成与发展操作系统的基本概念操作系统的基本概念1 什么是操作系统什么是操作系统操作系统定义操作系统定义操作系统的资源管理功能操作系统的资源管理功能为什么要学习操作系统为什么要学习操作系统1.1 操作系统的定义操作系统的定义操作系统操作系统Operating System(OS)操作系统这个术语听上去很稀松平常,并不给人任何操作系统这个术语听上去很稀松平常,并不给人任何兴奋的感觉,甚至有点兴奋的感觉,甚至有点“土土”,原因在于中文的,原因在于中文的“操作操作”这个这个词。提到操作员(工),通常让人想起操作机床、起重机词。提到操作员(工),通常让人想起操作机床、起重机等
5、各种设备或工具的穿着油腻工作服的蓝领工人(计算机等各种设备或工具的穿着油腻工作服的蓝领工人(计算机操作员充其量也就是蓝领中的白领),自然让人兴奋不起操作员充其量也就是蓝领中的白领),自然让人兴奋不起来。将来。将 Operating 翻译为中文的翻译为中文的“操作操作”,是因为最初的,是因为最初的译者没有真正理解英文译者没有真正理解英文 Operating system 所蕴含的精所蕴含的精髓。髓。Operating?图图1-1 对对Operating的误读的误读那么,英文中的那么,英文中的 Operating system实际意味着什实际意味着什么?么?我们先看两个有关的英文术语。我们先看两个
6、有关的英文术语。Operating Surgeon:外科主刀大夫外科主刀大夫。在整个手术过在整个手术过程中,主刀大夫具有至高无上的权威:他说要打麻药,麻醉师就要赶程中,主刀大夫具有至高无上的权威:他说要打麻药,麻醉师就要赶紧打麻药;他说需要手术钳,助理大夫就赶忙递给他手术钳;他说需紧打麻药;他说需要手术钳,助理大夫就赶忙递给他手术钳;他说需要止血,护士就得马上拿止血药棉来止血。整个手术最关键的部分:要止血,护士就得马上拿止血药棉来止血。整个手术最关键的部分:切开皮肤、拿掉器官、安装移植器官等均由主刀大夫完成。当然,主切开皮肤、拿掉器官、安装移植器官等均由主刀大夫完成。当然,主刀大夫有时也会将某
7、些任务,如缝合创口交给助理大夫来做,但整个刀大夫有时也会将某些任务,如缝合创口交给助理大夫来做,但整个手术的过程皆由其主控。一句话,手术的过程皆由其主控。一句话,Operating Surgeon就是掌控整就是掌控整个手术过程、具有精湛技术和敏锐判断力的医师。个手术过程、具有精湛技术和敏锐判断力的医师。Operating Person:操刀手,操控者操刀手,操控者。是操控掌控是操控掌控事情的人。事情的人。从从Operating Surgeon和和Operating Person这两个这两个术语的语义我们可理解术语的语义我们可理解Operating具有具有“掌控掌控”的含义。因的含义。因此,应该
8、把此,应该把Operating system理解为:理解为:Operating system掌控局势的一种系统掌控局势的一种系统这个术语是专为计算机系统设计的(这个术语是专为计算机系统设计的(IBM),指的是),指的是计算计算机系统里的一切事情均由机系统里的一切事情均由OS来掌控来掌控。正如任何一种有效的组织或系统都会有一个核心机构正如任何一种有效的组织或系统都会有一个核心机构存在,该核心管理着该组织或系统的可用资源,掌控着系存在,该核心管理着该组织或系统的可用资源,掌控着系统的正常运转。统的正常运转。OS就是计算机系统中的核心机构,它是就是计算机系统中的核心机构,它是计算机软件精英们设计的一
9、种大型和极其复杂的软件系统,计算机软件精英们设计的一种大型和极其复杂的软件系统,用于代替人并以人的思维方式来自动管理计算机上的用于代替人并以人的思维方式来自动管理计算机上的所有软、硬资源,掌控在计算机系统上可能发生的一切事所有软、硬资源,掌控在计算机系统上可能发生的一切事情。情。那么,那么,操作系统到底是什么?操作系统到底是什么?操作系统到底掌控什么事情?操作系统到底掌控什么事情?操作系统是一种大型系统软件操作系统是一种大型系统软件计算机软件有应用软件与系统软件之分。计算机软件有应用软件与系统软件之分。应用软件是计算机用户为了应用计算机解决某一特定应用软件是计算机用户为了应用计算机解决某一特定
10、问题而开发的软件。问题而开发的软件。系统软件则是与具体应用逻辑无关的软件,是应用软系统软件则是与具体应用逻辑无关的软件,是应用软件的开发和运行平台。系统软件一般分为四类:件的开发和运行平台。系统软件一般分为四类:操作操作系统;系统;语言处理系统(编译程序、解释程序);语言处理系统(编译程序、解释程序);软软件开发实用工具件开发实用工具(编辑、调试、诊断检测、(编辑、调试、诊断检测、CASE等程序)等程序);数据库管理系统(数据库管理系统(DBMS)。其中,操作系统也称)。其中,操作系统也称系统管理软件,其他则为系统应用软件。系统管理软件,其他则为系统应用软件。操作系统是规模最大的系统软件,如操
11、作系统是规模最大的系统软件,如Windows XP 4000万行源代码,而一些万行源代码,而一些Linux系统的规模则更大,已系统的规模则更大,已达到上亿行源代码。达到上亿行源代码。1.操作系统到底是什么?操作系统到底是什么??操作系统是系统软件中的核心操作系统是系统软件中的核心图图1-2是一个简略的计算机系统视图。从中可清楚地是一个简略的计算机系统视图。从中可清楚地看到计算机系统的层次结构。看到计算机系统的层次结构。硬件是操作系统存在的物质基础。硬件向软件提供的硬件是操作系统存在的物质基础。硬件向软件提供的是物理机器界面(是物理机器界面(interface),即机器的指令系统。),即机器的指
12、令系统。操作系统是加在操作系统是加在“裸机裸机”(纯硬件)上的第一层软件(纯硬件)上的第一层软件(最底层软件),是直接建筑在硬件上的软件,它使用机(最底层软件),是直接建筑在硬件上的软件,它使用机器指令实现对硬件的管理和控制。操作系统常驻内存,它器指令实现对硬件的管理和控制。操作系统常驻内存,它覆盖了所有的硬件特性和功能,通过各种覆盖了所有的硬件特性和功能,通过各种抽象抽象,构建了一,构建了一个功能远强于裸机且易用的个功能远强于裸机且易用的“操作系统虚拟机操作系统虚拟机”(如(如Windows虚拟机、虚拟机、Linux虚拟机)。操作系统向上层提虚拟机)。操作系统向上层提供了两种界面:用户操作界
13、面(操作命令)和编程界面供了两种界面:用户操作界面(操作命令)和编程界面硬件硬件操作系统操作系统系统应用软件系统应用软件应用软件应用软件用户用户物理机器界面物理机器界面编程界面编程界面用户操作界面用户操作界面图图1-2 计算机系统视图计算机系统视图计算机系统计算机系统(系统调用)。它们向上层掩盖了所有的硬件特性细节。(系统调用)。它们向上层掩盖了所有的硬件特性细节。系统应用软件处于操作系统的上层,它们不是常驻内系统应用软件处于操作系统的上层,它们不是常驻内存的,而是存放在磁盘等外存设备上,仅当需要运行这些存的,而是存放在磁盘等外存设备上,仅当需要运行这些软件时,才把它们加载到内存,并在操作系统
14、的支持下工软件时,才把它们加载到内存,并在操作系统的支持下工作,通过系统调用获取操作系统提供的各种服务。系统应作,通过系统调用获取操作系统提供的各种服务。系统应用软件有效地扩充了计算机系统的功能,它与操作系统一用软件有效地扩充了计算机系统的功能,它与操作系统一起组成系统软件整体,起到了简化程序设计、扩大计算机起组成系统软件整体,起到了简化程序设计、扩大计算机处理能力、提高计算机使用效率、充分发挥各种资源功能处理能力、提高计算机使用效率、充分发挥各种资源功能的作用。因此,可以把系统应用软件看作是操作系统的延的作用。因此,可以把系统应用软件看作是操作系统的延伸,甚至可把它们看作是操作系统的一部分(
15、如伸,甚至可把它们看作是操作系统的一部分(如Linux发发行版)。但是系统应用软件与操作系统的不同之处在于,行版)。但是系统应用软件与操作系统的不同之处在于,其运行环境与普通应用软件一样,它们仍然需要通过操作其运行环境与普通应用软件一样,它们仍然需要通过操作系统才能使用和控制系统资源。系统才能使用和控制系统资源。计算机系统层次结构的最上层是应用软件。它们在系计算机系统层次结构的最上层是应用软件。它们在系统软件的支持下运行,通过系统调用获取各种系统软件的统软件的支持下运行,通过系统调用获取各种系统软件的服务。服务。用户在终端上通过输入各种操作命令(字符命令或图用户在终端上通过输入各种操作命令(字
16、符命令或图形命令)使用操作系统虚拟机。形命令)使用操作系统虚拟机。可见,有了操作系统,用户和所有非操作系统程序不可见,有了操作系统,用户和所有非操作系统程序不再直接面对物理机器界面,而是面对操作系统提供的掩盖再直接面对物理机器界面,而是面对操作系统提供的掩盖了所有硬件特性细节的虚拟机界面,通过这种虚拟机界面了所有硬件特性细节的虚拟机界面,通过这种虚拟机界面方便地使用功能被大大强化了的操作系统虚拟机。方便地使用功能被大大强化了的操作系统虚拟机。例如,如果用户在裸机上直接编程是很困难的,因为例如,如果用户在裸机上直接编程是很困难的,因为各种数据转移都需要用户自己来控制,对不同设备要用不各种数据转移
17、都需要用户自己来控制,对不同设备要用不同命令来驱动,而这对一般人来说是很难胜任的。操作系同命令来驱动,而这对一般人来说是很难胜任的。操作系统将这些工作从用户手中接过来,从而让用户感觉到编程统将这些工作从用户手中接过来,从而让用户感觉到编程是一件容易的事(相对来说,而对有些人来说编程永远是是一件容易的事(相对来说,而对有些人来说编程永远是很难的)。很难的)。又如,操作系统通过进程抽象让计算机的每一个用户又如,操作系统通过进程抽象让计算机的每一个用户感觉到有一台自己独享的感觉到有一台自己独享的CPU;通过虚拟内存的抽象,让;通过虚拟内存的抽象,让用户感觉到物理内存空间具有无限扩张性。用户感觉到物理
18、内存空间具有无限扩张性。总之,通过操作系统对裸机的各种抽象,可魔幻般地总之,通过操作系统对裸机的各种抽象,可魔幻般地实现:少变多、难变易、弱变强。实现:少变多、难变易、弱变强。操作系统是最基本的系统软件操作系统是最基本的系统软件 任何现代计算机都必须配置和安装操作系统。在一台任何现代计算机都必须配置和安装操作系统。在一台计算机上你可以不安装某些系统应用软件,如语言处理系计算机上你可以不安装某些系统应用软件,如语言处理系统或统或DBMS,但操作系统是必须安装的,否则,计算机就,但操作系统是必须安装的,否则,计算机就根本无法开始工作。计算机加电启动时,除了必要的硬件根本无法开始工作。计算机加电启动
19、时,除了必要的硬件检测,首先将操作系统加载到内存并启动,此后,计算机检测,首先将操作系统加载到内存并启动,此后,计算机系统的一切工作都在操作系统的掌控下进行。系统的一切工作都在操作系统的掌控下进行。作为最基本的系统软件,操作系统为所有的其它软件作为最基本的系统软件,操作系统为所有的其它软件(包括系统应用软件)提供了一个开发和运行的基础平台,(包括系统应用软件)提供了一个开发和运行的基础平台,即所有的其他软件都需要在操作系统这个平台上进行开发,即所有的其他软件都需要在操作系统这个平台上进行开发,并在操作系统的掌控下运行,通过操作系统获取所需的计并在操作系统的掌控下运行,通过操作系统获取所需的计算
20、机资源。算机资源。没有操作系统任何软件都无法运行没有操作系统任何软件都无法运行。什么是抽象?什么是抽象?所谓所谓抽象抽象(abstract),就是根本上存在但现实),就是根本上存在但现实中不存在的东西。抽象来源于具体,但又超越具体。中不存在的东西。抽象来源于具体,但又超越具体。例如绘画史上有抽象派,抽象画所表现的就是现实中例如绘画史上有抽象派,抽象画所表现的就是现实中不存在的东西,但这些东西确实又来源于现实。不存在的东西,但这些东西确实又来源于现实。抽象画抽象画01抽象画抽象画02:毕加索:毕加索 格尔尼卡格尔尼卡 2.操作系统到底掌控什么事情?操作系统到底掌控什么事情?当然是计算机上或计算机
21、里发生的一切事情。当然是计算机上或计算机里发生的一切事情。最原始的计算机并没有操作系统,而是直接由人来掌最原始的计算机并没有操作系统,而是直接由人来掌控事情。但是随着计算机复杂性的增长,人们已经不能直控事情。但是随着计算机复杂性的增长,人们已经不能直接掌控计算机了,于是人们编写出操作系统这个软件来掌接掌控计算机了,于是人们编写出操作系统这个软件来掌控计算机,将人类从日益复杂的任务中解脱出来。这个控计算机,将人类从日益复杂的任务中解脱出来。这个“掌控掌控”有着多层深远的意义。有着多层深远的意义。首先,由于计算机的功能和复杂性不断发生变化(趋首先,由于计算机的功能和复杂性不断发生变化(趋向更加复杂
22、),操作系统所掌控的事情也就越来越多,越向更加复杂),操作系统所掌控的事情也就越来越多,越来越复杂。同时,操作系统本身能够使用的资源也不断增来越复杂。同时,操作系统本身能够使用的资源也不断增多(如内存容量)。多(如内存容量)。?其次,既然操作系统是专门掌控计算机的,那么计算其次,既然操作系统是专门掌控计算机的,那么计算机上发生的所有事情自然需要操作系统的知晓和许可,未机上发生的所有事情自然需要操作系统的知晓和许可,未经操作系统同意的任何事情均视为非法,包括用户和应用经操作系统同意的任何事情均视为非法,包括用户和应用程序中的误操作,以及病毒和入侵攻击试图运作的事情。程序中的误操作,以及病毒和入侵
23、攻击试图运作的事情。操作系统设计人员当然要确保计算机不发生任何他们不知操作系统设计人员当然要确保计算机不发生任何他们不知情或不同意的事情。虽然,操作系统是由情或不同意的事情。虽然,操作系统是由Top级软件精英级软件精英们设计的,但是人的能力毕竟是有限的,人的思维也是有们设计的,但是人的能力毕竟是有限的,人的思维也是有缺陷的,只要是由人设计出的系统自然不会十全十美,缺缺陷的,只要是由人设计出的系统自然不会十全十美,缺陷是难免的,这就给了攻击者可乘之机。操作系统设计人陷是难免的,这就给了攻击者可乘之机。操作系统设计人员与攻击者之间的博弈是当前驱动操作系统不断改善的一员与攻击者之间的博弈是当前驱动操
24、作系统不断改善的一个重要动力。个重要动力。再次,掌控事情的水平有高低之分,有效率不同之分再次,掌控事情的水平有高低之分,有效率不同之分,就像外科主刀大夫之间也有水平高低之分。为了更好地,就像外科主刀大夫之间也有水平高低之分。为了更好地掌控事情,更好地满足人们永不满足的各种越来越苛刻的掌控事情,更好地满足人们永不满足的各种越来越苛刻的需求,操作系统自然需要不断改善,且将一直继续下去。需求,操作系统自然需要不断改善,且将一直继续下去。归结起来,操作系统掌控的事情主要有两大类:归结起来,操作系统掌控的事情主要有两大类:资源资源管理管理和和安全性管理安全性管理。操作系统管理计算机中的所有资源,包括硬件
25、资源操作系统管理计算机中的所有资源,包括硬件资源(设备资源)和软件资源(信息资源)。硬件资源可大致(设备资源)和软件资源(信息资源)。硬件资源可大致分为四类:分为四类:CPU、内存、外存及、内存、外存及I/O设备。操作系统通过设备。操作系统通过各种策略提高硬件资源的工作效率和利用率,改善和优化各种策略提高硬件资源的工作效率和利用率,改善和优化计算机的功能和性能。软件资源就是存储在计算机内的各计算机的功能和性能。软件资源就是存储在计算机内的各种文件,操作系统要对文件实施有效的保护,提供快速的种文件,操作系统要对文件实施有效的保护,提供快速的文件查找,通过共享提高文件资源的利用率。文件查找,通过共
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- UNIT1 操作系统 导论 讲义 课程 10860
限制150内