计算机操作系统案例库的设计与实现.docx
《计算机操作系统案例库的设计与实现.docx》由会员分享,可在线阅读,更多相关《计算机操作系统案例库的设计与实现.docx(22页珍藏版)》请在冰豆网上搜索。
计算机操作系统案例库的设计与实现
操作系统
学生:
XXX专业:
XXX
班级:
XXXX导师:
XXX
摘要
计算机操作系统是本专业的重要课程之一,通过学习使学员掌握计算机操作系统的设计基本原理及组成;计算机操作系统的基本概念和相关的新概念、名词及术语;了解计算机操作系统的发展特点和设计技巧和方法;对常用计算机操作系统(DOS、Windows、UNIX、Linux)会进行基本的操作使用具体内容有:
操作系统概述:
操作系统定义及发展、五大类型、五大功能、操作系统属性、"生成"概念。
(人机交互)界面管理:
人机交互的特点;第一、二、三代界面;基本的键盘命令和系统调用;作业调度算法。
文件管理:
文件的结构与分类;物理结构和逻辑结构;目录结构;存取控制和安全机制;文件系统。
存储管理:
分区、分页、分段管理;物理地址与逻辑地址;"扩充"技术;分配算法输入输出设备管理:
功能与分类;独享、共享、虚拟设备的管理;管理策略。
处理机管理:
操作系统核心功能;"进程"概念;并发与并行;进程的基本状态与转换;进程调度算法;同步与互斥;P-V操作;死锁概念。
操作系统程序结构:
层次、模块结构;设计与检测。
关键词:
操作系统;存储管理;系统
Summary
computeroperatingsystemisoneoftheimportantcourseprofessionalbylearningsothatstudentsmasterthebasicprinciplesofcomputeroperatingsystemdesignandcomposition;thebasicconceptsofcomputeroperatingsystemandrelatednewconcepts,termsandterminology;understandingofcomputeroperatingsystemThedevelopmentoffeaturesanddesigntechniquesandmethods;tothecommonlyusedcomputeroperatingsystem(DOS,Windows,UNIX,Linux)willbeconductedusingthespecificcontentofbasicoperationsare:
theoperatingsystemoverview:
operatingsystemdefinitionanddevelopmentoffivetypes,fivefunctions,operationsSystemProperties,"Build"concept.(HCI)interfacemanagement:
thecharacteristicsofhuman-computerinteraction;thefirst,secondandthirdgenerationinterface;basickeyboardcommandsandsystemcalls;jobschedulingalgorithm.Documentmanagement:
documentstructureandclassification;physicalstructureandlogicalstructure;directorystructure;accesscontrolandsecuritymechanisms;filesystem.Storagemanagement:
partitioning,paging,segmentationmanagement;physicaladdressandlogicaladdress;"expansion"technology;allocationalgorithmforinput-outputdevicemanagement:
functionsandtheirclassification;exclusive,shared,virtualdevicemanagement;managementstrategy.Processormanagement:
thecoreoperatingsystemfunctions;"process"concept;concurrentandparallel;thebasicstateandtheconversionprocess;processschedulingalgorithm;synchronizationandmutualexclusion;PVoperation;deadlockconcept.Operatingsystemprogramstructure:
hierarchical,modularstructure;designandtesting.
Keywords:
operatingsystem;storagemanagement;system
目录
摘要I
第一章前言1
第二章计算机操作系统概述2
1.操作系统的概念2
2.操作系统的生成和五大类型2
2.1生成2
2.2多通道批处理操作系统2
2.3分时与实时3
3.操作系统的五大功能3
3.1作业管理3
3.2文件管理3
3.3存储管理3
3.4设备管理3
3.5进程管理3
4.表征操作系统的属性4
第三章作业管理4
1.基本概念4
2.用户界面4
3.传统的人机接口4
4.作业输入输出方式5
5.作业调度5
第四章文件管理5
第五章输入输出设备管理9
第六章进程及处理机管理11
致谢13
参考文献14
12陈莉君.深入分析Linux内核源代码.北京:
人民邮电出版社,200214
14李善平,刘文峰.Linux内核2.4版源代码分析大全.北京:
机械工业出版社,200214
16马季兰,彭新光.Linux操作系统,北京:
电子工业出版社,200214
18罗宇,邹鹏,吴刚.操作系统.北京:
电子工业出版社,200314
25王长山.操作系统辅导.西安:
西安电子科技大学出版社,200114
第一章前言
操作系统的历史
操作系统的发展和计算机的组成与体系结构相关,经历了四个发展阶段:
∙1946年—50年代末:
第一代,电子管时代,无操作系统。
∙1950年代末-60年代中期:
第二代,晶体管时代,批处理系统。
∙1960年代中期-70年代中期:
第三代,集成电路时代,多道程序设计。
∙1970年代中期至今:
第四代,大规模和超大规模集成电路时代,分时系统。
现代计算机正向着巨型、微型、并行、分布、网络化和智能化几个方面发展。
手工操作
手工操作过程:
先把程序纸带(或卡片)装上计算机,然后启动输入机把程序和送入计算机,接着通过控制台开关启动程序运行。
计算完毕,打印机输出计算结果,用户卸下并取走纸带(或卡片)。
第二个用户上机,重复同样的步骤。
手工操作存在问题:
上机完全是手工操作,手工操作的慢速度和计算机的高速度之间形成矛盾.唯一的解决办法是摆脱手工操作,实现作业的自动过渡。
这就出现了批处理。
单道批处理系统(simplebatchprocessing)
计算机发展的早期,没有任何用于管理的软件,所有的运行管理和具体操作都由用户自己承担,任何操作出错都要重做作业,CPU的利用率甚低。
解决的方法有两个:
首先配备专门的计算机操作员,程序员不再直接操作机器,减少操作机器的错误。
另一个是进行批处理,操作员把用户提交的作业分类,把一批中的作业编成一个作业执行序列。
每一批作业将有专门编制的监督程序(monitor)自动依次处理。
1.批处理中的作业的组成:
包括用户程序、数据和作业说明书(作业控制语言)。
“批”:
供一次加载的磁带或磁盘,通常由若干个作业组装成,在处理中使用一组相同的系统软件(系统带)。
2.两种批处理方式
早期批处理分为两种:
联机批处理和脱机批处理。
∙
(1)联机批处理慢速的输入输出(I/O)处理仍直接由主机来完成。
执行过程:
a.用户提交作业:
对于作业、数据,用作业控制语言编写作业说明书;
b.作业以纸带或卡片为保存介质;
c.操作员合成批作业,通过输入设备(纸带输入机或读卡机)存入磁带;
d.监督程序根据系统资源情况读入一个作业;
e.从磁带读入汇编或编译程序,将用户作业源程序生成目标代码;
f.连接装配程序将目标代码变为可执行程序;
g.启动执行;
h.执行完毕,执行结果输出;
i.读入另一个作业,重复过程e-i;
j.一批作业完成后,处理下一批作业;
联机批处理主要优点:
解决了作业自动转接,减少了作业建立和手工操作时间。
联机批处理存在问题:
CPU与I/O串行操作,输入输出时,CPU处于等待状态。
(2)脱机批处理(缓冲技术的一种)
脱机批处理显著特征是增加一台不与主机直接连接而专门用于与输入输出打交道的卫星机。
利用卫星机完成输入输出功能。
主机与卫星机可并行工作。
卫星机:
完成面向用户的输入输出(纸带或卡片),中间结果暂存在磁带或磁盘上。
作业控制命令由监督程序来执行,完成如装入程序、编译、运行等操作。
脱机批处理主要优点:
实现了作业自动过渡,改善了输入输出设备的利用率,提高了计算机的处理能力。
脱机批处理存在问题:
磁带需要手工拆装,系统的保护不够。
20世纪60年代初期,硬件获得了两方面(即通道和中断技术)的进展,导致操作系统进入执行系统(executivesystemwww.biyezuopin.cc)阶段。
通道(channel)是一种专用处理部件,它能控制一台或多台输入输出设备工作,负责输入输出设备与主存之间的信息传输。
它一旦被启动就能独立与CPU运行,这样可使CPU和通道并行操作,而且CPU和多种输入输出设备也能并行操作。
中断(interrupt)是指当主机接到外部信号时,马上停止原来工作,转去处理这一事件,处理完毕后,主机回到原来的断点继续工作。
多道程序系统(multiprogrammingsystem)
早期的批处理可能出现两种情况:
● 对于以计算为主的作业,输入输出量少,外围设备空闲;
● 对于以输入输出为主的作业,主机空闲。
单道运行:
每次只调用一个用户作业程序进入内存并运行。
多道程序合理搭配输入输出为主与计算为主程序交替运行,充分利用资源,提高系统效率。
多道程序的运行特点:
✧ 多道:
计算机内存中同时存放多道相互独立的程序。
✧ 宏观上并行运行:
同时进入系统的几道程序都处于运行状态,但都未运行完。
✧ 微观上串行运行:
各作业轮流使用CPU,交替执行。
在批处理中采用多道程序设计技术,就形成了多道批处理系统。
在当前运行的作业需做I/O处理时,CPU转而执行另一个作业。
(I/O完成后是否立刻恢复执行,要等到其他程序再次I/O时)。
多道程序系统的技术问题:
(1)并行程序的运行需要共享软件硬件资源,需要同步和互斥机制。
(2)多道程序需要提高内存的使用效率,需要覆盖技术、对换技术、虚拟存储等技术。
(3)多道程序在内存中要保证系统程序存储区和用户程序存储区的安全可靠,需要内存保护。
1.2.4分时系统(time-sharingsystem)
分时技术:
把处理机的运行时间分为很短的时间片,按时间片轮流把处理机分配给各联机作业使用。
“分时”的含义:
分时是指多个用户利用分时技术分享使用同一台计算机。
多个程序分时共享硬件和软件资源(注意区分:
硬件各部分的分时,如CPU和DMA使用总线和内存)。
分时系统:
一般采用时间片轮转的方式,使一台计算机为多个终端服务。
对每个用户能保证足够快的响应时间,并提供交互会话能力。
分时系统的特点:
(1) 人机交互性好:
在调试和运行程序时由用户自己操作。
(2) 多用户同时性:
多个用户同时使用。
(3) 用户独立性:
对每个用户而言,好象独占主机。
多用户分时操作系统是当今计算机操作系统中使用最普遍的一类操作系统。
1.实时系统(real-timesystem)
实时系统是一种联机系统,主要用于工业过程控制、军事实时控制、金融等领域,包括实时控制、实时信息处理。
主要特点是提供即时响应和高可靠性。
要求:
响应时间短,在一定范围之内;系统可靠性高。
2.通用系统(generalsystem)
批处理系统、分时系统和实时系统是操作系统的三种基本类型。
目前的操作系统,通常具有分时、实时和批处理两种以上的功能,又称作通用操作系统。
通常把实时任务称为前台作业,批作业称为后台作业。
将批处理和分时处理相结合可构成分时批处理系统。
例如:
UNIX操作系统:
SUN公司的Solaris,IBM公司的AIX。
Windows操作系统:
Microsoft公司的Windows系列。
L操作系统:
Redhat,红旗Linux等。
3.操作系统的进一步发展
3.1DOS操作系统
从1981年问世至今,DOS经历了7次大的版本升级,从1.0版到现在的7.0版,不断地改进和完善。
但是,DOS系统的单用户、单任务、字符界面和16位的大格局没有变化,因此它对于内存的管理也局限在640KB的范围内。
DOS最初是为IBM-PC开发的操作系统,因此它对硬件平台的要求很低,即使对于DOS6.0这样的高版本DOS,在640KB内存、40MB硬盘、80286处理器的环境下也可正常运行,因此DOS系统既适合于高档微机使用,又适合于低档微机使用。
常用的DOS有三种不同的品牌,它们是Microsoft公司的MS-DOS、IBM公司的PC-DOS以及Novell公司的DRDOS,这三种DOS都是兼容的,但仍有一些区别,三种DOS中使用最多的是MS-DOS。
DOS系统一个最大的优势是它支持众多的通用软件,如各种语言处理程序、数据库管理系统、文字处理软件、电子表格。
而且围绕DOS开发了很多应用软件系统,如财务、人事、统计、交通、医院等各种管理系统。
鉴于这个原因,尽管DOS已经不能适应32位机的硬件系统,但是仍广泛流行,而且在未来的几年内也不会很快被淘汰。
3.2windows系统
windows是Microsoft公司在1985年11月发布的第一代窗口式多任务系统,它使PC机开始进入了所谓的图形用户界面(GUI:
GraphicUserInterface)时代。
在图形用户界面中,每一种应用软件(即由windows支持的软件)都用一个图标(Icon)表示,用户只需把鼠标移到某图标上,连续两次按下鼠标器的拾取键即可进入该软件,这种界面方式为用户提供了很大的方便,把计算机的使用提高到了一个新的阶段。
windows1.X版是一个具有多窗口及多任务功能的版本,但由于当时的硬件平台为PC/XT,速度很慢,所以windows1.X版本并未十分流行。
1987年底Microsoft公司又推出了MS-windows2.X版,它具有窗口重叠功能,窗口大小也可以调整,并可把扩展内存和扩充内存作为磁盘高速缓存,从而提高了整台计算机的性能,此外它还提供了众多的应用程序:
文本编辑Write、记事本Notepad、计算器Calculator、日历Calendar……等。
随后在88年、89年又先后推出了MS-windows/286-V2.1和MS-windows/386V2.1这两个版本。
1990年,Microsoft公司推出了windows3.0,它的功能进一步加强,具有强大的内存管理,且提供了数量相当多的windows应用软件,因此成为386、486微机新的操作系统标准。
随后,windows发表3.1版,而且推出了相应的中文版。
3.1版较之3.0版增加了一些新的功能,受到了用户欢迎,是当时最流行的windows版本。
1995年,Microsoft公司推出了windows95(也称为Chicago或windows4.0)。
在此之前的windows都是由DOS引导的,也就是说它们还不是一个完全独立的系统,而windows95是一个完全独立的系统,并在很多方面作了进一步的改进,还集成了网络功能和即插即用(PlugandPlay)功能,是一个全新的32位操作系统。
1998年,Microsoft公司推出了windows95的改进版windows98,windows98的一个最大特点就是把微软的Internet浏览器技术整合到了windows95里面,使得访问Internet资源就像访问本地硬盘一样方便,从而更好地满足了人们越来越多的访问Internet资源的需要。
windows98是目前实际使用的主流操作系统。
近来,有关windows2000的宣传是越来越多,说到windows2000,我们不能不提一下Microsoft公司的另一个产品----windowsNT系统(NT是NewTechnology即新技术的缩写),windowsNT是真正的32位操作系统,与普通的windows系统不同,它主要面向商业用户,有服务器版和工作版之分,按原计划,Microsoft公司准备在1999年将最新的工作站版本NT5.0和普通的windows98统一为一个完整的操作系统,即windows2000Professional,这样,无论对商业用户还是普通个人用户,以后Microsoft公司就只有一个windows操作系统了。
3.3存储管理
实质是对存储“空间”的管理,主要指对内存的管理
3.3Linux系统
Linux是当今电脑界一个耀眼的名字,它是目前全球最大的一个自由免费软件,其本身是一个功能可与Unix和windows相媲美的操作系统,具有完备的网络功能。
Linux最初由芬兰人LinusTorvalds开发,其源程序在Internet网上公开发布,由此,引发了全球电脑爱好者的开发热情,许多人下载该源程序并按自己的意愿完善某一方面的功能,再发回网上,Linux也因此被雕琢成为一个全球最稳定的、最有发展前景的操作系统。
曾经有人戏言:
要是比尔·盖茨把windows的源代码也作同样处理,现在windows中残留的许多BUG(错误)早已不复存在,因为全世界的电脑爱好者都会成为windows的义务测试和编程人员。
Linux操作系统具有如下特点:
1.它是一个免费软件,您可以自由安装并任意修改软件的源代码。
2.Linux操作系统与主流的UNIX系统兼容,这使得它一出现就有了一个很好的用户群。
3.支持几乎所有的硬件平台,包括Intel系列,680x0系列,Alpha系列,MIPS系列等,并广泛支持各种周边设备。
目前,Linux正在全球各地迅速普及推广,各大软件商如Oracle、Sybase、Novell、IBM等均发布了Linux版的产品,许多硬件厂商也推出了预装Linux操作系统的服务器产品,当然,PC用户也可使用Linux。
另外,还有不少公司或组织有计划地收集有关Linux的软件,组合成一套完整的Linux发行版本上市,比较著名的有RedHat(即红帽子)、Slackware等公司。
虽然,现在说Linux会取代Unix和windows还为时过早,但一个稳定性、灵活性和易用性都非常好的软件,肯定会得到越来越广泛的应用。
3.4Unix系统
Unix系统是1969年问世的,最初是在中小型计算机上运用。
最早移植到80286微机上的Unix系统,称为Xenix。
Xenix系统的特点是短小精干,系统开销小,运行速度快。
经过多年的发展,Xenix已成为十分成熟的系统,最新版本的Xenix是SCOUnix和SCOCDT。
当前的主要版本是Unix3.2V4.2以及ODT3.0。
Unix是一个多用户系统,一般要求配有8M以上的内存和较大容量的硬盘。
3.5进程管理
又称处理机管理,实质上是对处理机执行“时间”的管理,即如何将CPU真正合理地分配给每个任务。
3.5OS/2系统
1987年IBM公司在激烈的市场竞争中推出了PS/2(PersonalSystem/2)个人电脑。
PS/2系列电脑大幅度突破了现行PC机的体系,采用了与其它总线互不兼容的微通道总线MCA,并且IBM自行设计了该系统约80%的零部件,以防止其它公司仿制。
OS/2系统正是为PS/2系列机开发的一个新型多任务操作系统。
OS/2克服了DOS系统640KB主存的限制,具有多任务功能。
OS/2也采用图形界面,它本身是一个32位系统,不仅可以处理32位OS/2系统的应用软件,也可以运行16位DOS和windows软件。
OS/2系统通常要求在4MB内存和100MB硬盘或更高的硬件环境下运行。
第二章计算机操作系统概述
1.操作系统的概念
操作系统(OperatingSystem,OS),是一种软件,属于系统软件;
从用户角度看,操作系统可以看成是计算机的硬件扩充;从人机交互方式来看,操作系统是用户与机器的接口;从计算机的系统结构看,操作系统是一种层次、模块结构的程序集合,属于有序分层法,是无序模块的有序层次调用;操作系统体现了计算机技术和管理技术的结合。
2.操作系统的生成和五大类型
2.1生成
产生最适合自己工作环境的OS内核(kernel)。
既方便用户,又使系统开销尽量小;生成的配置过程如UNIX中newconfig命令;DOS中config.sys文件;维护由系统管理员负责
操作系统的五大类型是批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统
2.2多通道批处理操作系统
多道程序设计:
即在系统内(内存)同时存放并运行几道相互独立的程序。
多道程序设计的基础:
是将运行过程进一步细化成几个小的步骤,从而实现宏观上的并行。
但从微观上看,内存中的多道程序轮流地或分时地占用处理机,交替执行。
注意:
多道程序系统≠多重处理系统≠多用户≠多终端
多道是指内存中驻留多个程序或一个程序的多个程序段,因此,多用户系统一定是采用多道技术。
而多道系统不一定是多用户系统。
多重处理系统一般指多CPU系统。
当然,一个CPU的系统采用分时技术可以为多用户服务。
多用户的关键技术是在用户之间要有保密保安措施。
终端指用户使用的硬件设备,即使一个终端也可为多用户使用,例如,银行的自动取款机(ATM)。
2.3分时与实时
分时技术:
把CPU的时间分成很短的时间片(例如,几十至几百毫秒)工作。
随着时间片的时间减少,对换时间所占的比例随之增大。
随着用户数目的不断增加,这种矛盾会越来越突出。
实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速反应。
交互作用能力较差
3.操作系统的五大功能
3.1作业管理
包括任务管理、界面管理、人机交互、图形界面、语音控制和虚拟现实等
3.2文件管理
又称为信息管理
3.3存储管理
实质是对存储“空间”的管理,