自考02326《操作系统》串讲笔记1 下载本文

第一部分 课程概述

一、使用教材

《操作系统》,全国高等教育自学考试指导委员会组编,谭耀铭主编,中国人民大学出版社2007年版。 二、课程简介

随着计算机技术的迅速发展,计算机的硬、软件资源越来越丰富,用户也要求能更方便、更灵活地使用计算机系统。为了增强计算机系统的处理能力以及方便用户有效地使用计算机系统,操作系统已成为现代计算机系统中不可缺少的重要组成部分。因此,操作系统课程也就成为高等学校计算机专业的重要专业基础课程。

本课程从操作系统实现资源管理的观点出发,阐述如何对计算机系统中的硬、软件资源进行管理,使计算机系统协调一致地、有效地为用户服务,充分发挥资源的使用效率,提高计算机系统的可靠性和服务质量。

三、课程学习与考试要求

在自学过程中、考生应掌握操作系统对各种资源的管理方法和操作系统各部分之间的联系,这样才能真正掌握操作系统的工作原理以及了解操作系统在整个计算机系统中的作用。

为了能确切地学好本课程,要求考生具备:高级语言程序设计、数据结构、计算机系统结构等课程的知识。

在学任何一门课程时,要能做到真正学有所得,就必须:认真阅读教材,边读边做笔记;及时做习题,巩固所学内容;做好阶段总结,正确理解课程内容。

但每一门课程都有自身的特殊性,对于具体课程来说,应按照课程的特点具体探讨如何进行学习。要学好操作系统课程,关键在于弄清操作系统要做什么,怎么去做和为什么要这样去做。所以,如能注意如下几点,将会对操作系统课程的自学起到促进作用。 (1)在开始阅读某一章教材之前,先翻阅大纲中有关这一章的考核知识点、考核要求、自学要求、重点,以便在阅读教材时做到心中有数,有的放矢。

(2)阅读教材时要逐段细读,逐句推敲,集中精力,吃透每一个知识点,对基本概念必须深刻理解,对基本原理必须彻底弄清,对设计技巧要能灵活运用。 (3)根据操作系统在计算机系统中的应用,你在学习操作系统课程时应围绕如下四个中心问题:

①操作系统怎样管理计算机系统中的各种资源,以及保证资源的使用效率。

②操作系统怎怎样为用户提高良好的运行环境,以方便用户使用计算机系统。

③操作系统怎样按照用户的要求来控制程序的执行,以保证用户

得到满意的服务。

④操作系统怎样合理分配和管理公享资源,以确保计算机系统的安全可靠。

你在学习过程中根据这四个方面边学边总结,那么就可对操作系统有一个比较正确和全面的理解。

(4)对于自学者来说阅读一遍书是不够的,有时阅读三遍也没完全明白,这不足为奇,也不必丧失信心。想想在校学生的学习过程,他们在课前预习,课堂听老师讲解,课后复习,在做习题等。所以,要真正学习一门课反复阅读是正常现象。

(5)做习题是理解、消化和巩固所学知识,培养分析问题能力的重要环节,在做习题前应先认真仔细阅读教材,切忌根据习题选择教材内容,否则本末倒置,欲速则不达。 四、前导课程和后继课程 操作系统是管理计算机系统资源和控制程序执行的一种系统软件。它直接扩充裸机(不配有任何软件的计算机)的功能,为程序的执行提供良好环境。所以,在学习操作系统之前应该先学习计算机组成原理、数据结构、高级语言程序设计、汇编语言程序设计等课程。在这些先修课的基础上再学习本课程,符合循序渐进的规律,不仅容易理解课程内容,而且能正确地把操作系统的各部分程序有机地联系起来。

四、试题题型及分值

1.根据最新大纲的要求操作系统试卷通常采用的题型有:单项选择题、多项选择题、填空题、简答题、综合题。

分别为:单选(20×1=20分) 多选(5×2=10分) 填空题(每空1分共12分) 简答(5×4=20分) 综合题(4道共36分)

2.试题中对不同能力层次要求的试题分数实行的比例配置,通常为:识记20%、理解40%、应用40%。

第二部分 各章串讲 第一章

内容概要

本章介绍了操作系统的基本概念。主要包括:

计算机系统由硬件和软件两大部分组成,操作系统是计算机系统中的一种系统软件,它管理计算机系统的资源和控制程序的执行,改善人机界面和为其他软件提供支持。它的设计目标是使用户方便地使用计算机系统和使得计算机系统能高效地工作。

操作系统的形成和发展与计算机硬件和其他软件的发展密切相关。随着计算机应用的日益广泛,操作系统的功能也日趋完善,根据计算机系统的功能和应用,操作系统可分成几类:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。

引 论

批处理操作系统按照用户预先规定好的步骤控制作业的执行,实现计算机操作的自动化。批处理多道系统还可以充分利用计算机系统的资源,缩短作业执行时间,提高系统的吞吐率。

分时操作系统支持多个终端用户同时以交互方式使用计算机系统,为用户在测试、修改和控制程序执行方面提供了灵活性。 实时操作系统是实现实时控制的系统,它由外部信号触发而工作,并在特定的时间内完成处理,且给出反馈信号。实时系统对可靠性和安全性的要求极高,不强求系统资源的利用率。 个人计算机系统都是使用微行计算机。比起大型机来,微行机既小又便宜。但是,个人计算机系统的资源和功能相对有限。为了满足较大规模的应用,可把若干台个人计算机系统构成计算机网络。根据计算机网络的结构、通信方式和资源管理方法,分别配置网络操作系统或分布式操作系统。 操作系统的资源管理功能可以分为四大部分:处理器管理、存储管理、文件管理、设备管理。 重点内容 (一)操作系统的定义

操作系统是一种管理计算机系统资源、控制程序执行、改善人机界面和为其他软件提供支持的系统软件。 (二)操作系统的类型

批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、多机操作系统和嵌入式操作系统。其中前三种是基本的操作系统。

(三)UNIX操作系统简介

UNIX是一个交互式的分时操作系统。UNIX系统的源代码在它诞生后的初期阶段一直是公开的。 (四)操作系统的功能

操作系统负责管理计算机系统的所有资源,并调度这些资源的使用。具体来说,其主要功能有:处理器管理、存储管理、设备管理、文件管理。 考情分析

本章主要考查几种操作系统的特点,unix操作系统的介绍,操作系统的用户接口题型一般为单选题,多选题,填空题,有时概念会在简答题中考查。分值大约为5分。

例如:09年7月填空题26考查了(批处理对作业的控制),09年4月多选题21题,09年7月单选题3题考查了(实时操作系统的概念和应用),09年7月单选题2题考查了(unix操作系统的产生),09年4月单选题1题,填空题26题 考查了(操作系统的功能,两类接口)。 串讲内容

第一节 什么是操作系统(识记)

一、计算机系统

1、计算机系统定义:是按用户的要求接收和存储信息、自动进行数据处理并输出结果信息的系统。

2、计算机系统构成:硬件系统和软件系统。

3、硬件系统组成:中央处理器(CPU)、主存储器、辅助存储器、各种输入/输出设备。 二、操作系统

1、操作系统定义:是一种管理计算机系统资源、控制程序执行、改善人机界面和为其他软件提供支持的系统软件。

2、操作系统两个主要设计原则: (1)能使得计算机系统使用方便。→方便 (2)能使得计算机高效地工作。→效率

第二节 操作系统的形成(识记)

1、控制台:早期,程序的装入、调试以及控制程序的运行都是程序员通过控制台上的开关来实现。

2、原始汇编系统:用汇编语言编写的程序称为源程序,它不能直接在机器上执行,只有通过汇编语言解释程序把源程序转换成用机器指令序列表示的目标程序后才能在计算机上运行。

3、设备驱动程序:是最原始的操作系统。是一种控制设备工作

的程序。

4、管理程序:是初级的操作系统。是一种能对计算机硬件和软件进行管理和调度的程序。

5、操作系统:采用了SPOOLING的处理形式。

SPOOLING又称“斯普林”。从本质上说,SPOOLING是把磁盘作为一个巨大的缓冲器。在一个计算问题开始之前,把计算所需要的程序和数据从读卡机或其他输入设备上预先输入到磁盘上存放。这样,在进行计算时不再需要访问读卡机等慢速的输入设备,而可以从速度快得多的磁盘上读取程序和数据。同样,对于计算的结果也是先在磁盘上缓冲存放,待计算完成后,再从打印机上打印出该计算问题的所有计算结果。

第三节 操作系统的基本类型(领会)

按照操作系统提供的服务进行分类,可分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、多机操作系统和嵌入式操作系统等。其中批处理操作系统、分时操作系统、实时操作系统是基本的操作系统。 一、批处理操作系统

1、定义:用户为作业准备好程序和数据后,再写一份控制作业执行的说明书。然后把作业说明书连同相应的程序和数据一起交给操作员。操作员将收到的一批作业的有关信息输入到计算机系统中等待

处理,由操作系统选择作业,并按其操作说明书的要求自动控制作业的执行。采用这种批量化处理作业的操作系统称为批处理操作系统。

2、分类:

(1)批处理单道系统:一次只选择一个作业装入计算机系统的主存储器运行。

(2)批处理多道系统:允许多个作业同时装入主存储器,使中央处理器轮流地执行各个作业,各个作业可以同时使用各自所需要的外围设备。09年7月填空题中考了本知识点。 3、批处理多道系统优点:

(1)多道作业并行工作减少了处理器的空闲时间,即提高了处理器的利用率。

(2)作业调度可以按一定的组合选择装入主存储器的作业,只要搭配合理。

(3)作业执行过程中,不再访问低速的设备,而是直接从高速的磁盘上存取信息,从而缩短了作业执行时间,使单位时间内的处理能力得到提高。

(4)作业成批输入、自动选择和控制作业执行,减少了人工操作时间和作业交接时间,有利于提高系统的吞吐率。 二、分时操作系统

1、定义:能使用户通过与计算机相连的终端来使用计算机系统,

允许多个用户同时与计算机系统进行一系列的交互,并使得每个用户感到好像自己独占一台支持自己请求服务的计算机系统。具有这种功能的操作系统称为分时操作系统,简称分时系统。09年7月的选择题考查了本知识点。

2、分时技术:即把CPU时间划分成许多时间片,每个终端用户每次可以使用一个由时间片规定的CPU时间。这样,多个终端用户就轮流地使用CPU时间。如果某个用户在规定的一个时间片内还没有完成它的全部工作,这时也要把CPU让给其他用户,等待下一轮再使用一个时间片的时间,循环轮转,直至结束。 3、分时系统主要特点:

(1)同时性。允许多个终端用户同时使用一个计算机系统。 (2)独立性。用户在各自的终端上请求系统服务,彼此独立,互不干扰。

(3)及时性。对用户的请求能在较短时间内给出应答。 (4)交互性。采用人机对话的方式工作。 三、实时操作系统

1、定义:能使计算机系统接收到外部信号后及时进行处理,并且在严格的规定时间内处理结束,再给出反馈信号的操作系统称为实时操作系统,简称为实时系统。

2、实时操作系统的应用十分广泛,如控制科学实验、控制生产

流水,监督病人的临床功能、监督和控制飞机的飞行状态,进行工业过程控制等。

3、设计实时系统注意点: (1)要及时响应、快速处理。

(2)实时系统要求高可靠性和安全性,不强求系统资源的利用率。

第四节 操作系统的发展(领会)

1、单用户微机操作系统:是指早期的微型计算机上运行的操作系统每次只允许一个用户使用计算机。

2、网络操作系统:为计算机网络配置的操作系统称为网络操作系统。网络操作系统把计算机网络中各台计算机系统有机地联合起来,为用户提供一种统一、经济而有效地使用各台计算机系统的方法,可使各台计算机系统相互间传送数据,实现各台计算机系统之间的通信以及网络中各种资源的共享。

3、分布式操作系统:为分布式计算机系统配置的操作系统称为分布式操作系统。分布式操作系统能使系统中若干台计算机相互协作完成一个共同的任务,或者说把一个计算问题可以分成若干个子计算,每个子计算可以在计算机系统中的各计算机上并行执行。

4、多机操作系统:为多处理器系统配置的操作系统称为多机操作系统。

5、嵌入式操作系统:是指运行在嵌入式系统中对各种部件、装置等资源进行统一协调、处理和控制的系统软件。(主要特点是微型化和实时性)

第五节 UNIX操作系统简介(识记)

1、诞生:

UNIX的第一个版本Version 1是AT&T公司下属的Bell实验室里两位程序员Ken Thompson和Dennis Ritchie凭着个人的兴趣和爱好于1969年在一台闲置的PDP-7上开发的。 2、特点:

(1)UNIX是一个交互式的分时操作系统。 (2)UNIX系统的源代码公开。 第六节 操作系统的功能(识记)

1、操作系统的功能:(从资源管理的角度来分) (1)处理器管理:对CPU进行管理。 (2)存储管理:对主存储器进行管理。

(3)文件管理:通过对磁盘进行管理,实现对软件资源进行管理。 (4)设备管理:对各类输入/输出设备进行管理。 2、操作系统为用户提供的使用接口:

(1)程序员接口:通过“系统调用”使用操作系统功能。(开发

者)

(2)操作员接口:通过操作控制命令提出控制要求。(应用者)本章介绍了计算机系统的结构和操作系统的结构及相互关系。主要包括:

计算机系统由硬件和软件两大部分组成。硬件是软件执行的基础,硬件具有中央处理器与外围设备并行工作的能力。各个外围设备也可以同时工作。操作系统利用硬件的这种功能,采用多道程序设计技术,允许多用户并行工作。在硬件的中断装置配合下,操作系统能正确地控制各个程序的执行。

对任何一个要执行的程序必须先将它的程序和数据装入主存储器。中央处理器可以直接访问主存储器。各种外围设备只能与主存储器交换信息,在辅助存储器中的信息只有被读入主存储器之后,才能从中央处理器访问。大多数计算机系统把辅助存储器作为主存储器的扩展,用来保护大量的程序和数据。磁盘可以被随机访问,用来存放常用的信息;磁盘主要用于备份,存放不常用的信息以及作为系统间信息交换的媒介。

为了保证计算机系统能正确工作,硬件采用了若干保护措施,操作系统进行配合来提高系统的安全性。中央处理器有两种工作模式:管态(系统态)和目态(用户态)。限定用户程序在目态执行,不能直接使用特权指令。操作系统利用硬件设置的基址寄存器和限长寄存

器来限定各程序可访问的主存空间,以免相互干扰而造成错误。

UNIX是一个交互式的分时操作系统。从结构上看,UNIX可以分成内核层和外壳层两部分。

操作系统面向用户提供两类使用接口:一组操作控制命令或作业控制语言供用户提出对作业的控制要求;一组系统功能调用为用户程序提供服务功能。 UNIX允许每一个在终端上登陆成功的用户通过UNIX提供的操作控制命令来启动外壳层的用户程序执行。外壳层的用户程序在执行时又可通过系统调用来请求内核层的支持。

由于操作系统十分庞大,所以清晰的结构有利于开发和调试。层次结构是一种重要的设计技术,它不仅使正确性容易得到保证,而且也能提高可维护性和可移植性。 第二章 计算机系统结构简介

内容概要

本章介绍了计算机系统的结构和操作系统的结构及相互关系。主要包括: 计算机系统由硬件和软件两大部分组成。硬件是软件执行的基础,硬件具有中央处理器与外围设备并行工作的能力。各个外围设备也可以同时工作。操作系统利用硬件的这种功能,采用多道程序设计技术,允许多用户并行工作。在硬件的中断装置配合下,操作系统能正确地

控制各个程序的执行。

对任何一个要执行的程序必须先将它的程序和数据装入主存储器。中央处理器可以直接访问主存储器。各种外围设备只能与主存储器交换信息,在辅助存储器中的信息只有被读入主存储器之后,才能从中央处理器访问。大多数计算机系统把辅助存储器作为主存储器的扩展,用来保护大量的程序和数据。磁盘可以被随机访问,用来存放常用的信息;磁盘主要用于备份,存放不常用的信息以及作为系统间信息交换的媒介。

为了保证计算机系统能正确工作,硬件采用了若干保护措施,操作系统进行配合来提高系统的安全性。中央处理器有两种工作模式:管态(系统态)和目态(用户态)。限定用户程序在目态执行,不能直接使用特权指令。操作系统利用硬件设置的基址寄存器和限长寄存器来限定各程序可访问的主存空间,以免相互干扰而造成错误。 UNIX是一个交互式的分时操作系统。从结构上看,UNIX可以分成内核层和外壳层两部分。

操作系统面向用户提供两类使用接口:一组操作控制命令或作业控制语言供用户提出对作业的控制要求;一组系统功能调用为用户程序提供服务功能。 UNIX允许每一个在终端上登陆成功的用户通过UNIX提供的操作控制命令来启动外壳层的用户程序执行。外壳层的用户程序在执行时

又可通过系统调用来请求内核层的支持。

由于操作系统十分庞大,所以清晰的结构有利于开发和调试。层次结构是一种重要的设计技术,它不仅使正确性容易得到保证,而且也能提高可维护性和可移植性。 重点内容

(一)计算机系统的结构 1.计算机系统的层次结构

目前的计算机系统,一般都具有一种层次结构。从内到外依次为:硬件系统、软件系统、支撑软件和应用软件,最外层是使用计算机的人。

2.操作系统的运行方式

计算机开启时,自动执行引导程序。引导程序首先进行系统初始化的工作,然后把操作系统中的核心装入主存储器。此后操作系统便等待用户请求(事件)的发生,当有某个事件出现,硬件便能识别并能发生一个中断,从而通过操作系统,由它的服务程序去处理,处理结束后,又等待下一个事件发生。 (二)硬件环境

1.CPU与外设的并行工作

在计算机系统中,输入/输出控制系统负责完成外围设备与主存储器之间的信息传送。

2.存储体系

寄存器是处理器的组成部分,用来存放处理器的工作信息。一般来说,寄存器可分成如下几类: (1)通用寄存器; (2)指令寄存器; (3)控制寄存器;

主存储器是CPU能直接访问的唯一的存储空间,任何程序和数据都必须被装入主存储器之后,CPU才能对它进行操作。主存储器以“字节”为单位进行编址,若干字节组成一个“字”。中央处理器可以按地址读出主存储器中的一个字节或一个字的内容。

为了减少对主存储器的访问时间,加快程序的执行速度,现代计算机系统往往配置一个高速缓冲存储器(cache)。

辅助存储器解决了主存储器的容量不足,以及主存储器无法永久保存信息的问题。辅助存储器的优点是容量大且能永久保存信息,缺点是无法被中央处理器直接访问,必须通过主存储器才能访问。 3.保护措施 在资源共享的计算机系统中,只有具备了必要的保护措施,才能使个别的错误不致影响其他程序。硬件的部分保护措施有以下几种: (1)特权指令。 (2)管态和目态。

(3)存储保护。 (三)操作系统的结构 1.操作系统的结构设计目标。

程序的结构是影响程序质量的内在因素。

操作系统结构应追求四大目标,正确性、高效性、可维护性和可移植性。

2.操作系统的层次结构

层次结构法的最大特点是把整体问题局部化。一个大型复杂的操作系统被分解成若干单向依赖的层次,由各层的正确性来保证整个操作系统的正确性。

采用层次结构,能使结构清晰、便于调试,有利于功能的增加、删除和修改,正确性容易得到保证,也提高了系统的可维护性和可移植性。

3.UNIX系统的结构 从结构上看,UNIX可以分成内核层和外壳层两部分。内核层是UNIX操作系统的核心。它具有存储管理、文件管理、设备管理、进程管理等功能,以及为外壳层提供服务的系统调用。外壳层为用户提供各种操作命令(UNIX把它们称为shell命令)和程序设计环境。UNIX的内核程序用C语言和汇编语言编写。 (四)操作系统与用户的接口

操作系统为用户提供两类使用接口:一类是操作员级的,供用户提出如何控制作业执行的要求;另一类是程序员级的,为用户程序提供服务功能。 1.操作控制命令

用户使用作业控制语言编写“作业控制说明书”,从而形成批处理作业。用户使用键盘输入操作控制命令或选择菜单命令,进行交互处理。

2.系统调用

操作系统编制了许多不同功能的子程序,供用户程序在执行中调用,这些子程序称为系统功能调用程序或系统调用。 (五)UNIX的用户接口

UNIX允许每一个在终端上登陆成功的用户通过UNIX提供的操作控制命令来启动外壳层的用户程序执行。外壳层的用户程序在执行时又可通过系统调用来请求内核层的支持。 (1)shell命令。 (2)UNIX系统调用。 考情分析

本章主要考查计算机系统的层次结构,操作系统的特权指

令、管态与目态操作系统的设计目标,系统调用以及unix的系统调用。题型一般式单选题、多选题和简答题。分值大约为8分。

例如09年4月单选题3题,09年7月单选题4题考查了(特权指令与管态和目态),09年4月简答题考查了(操作系统的设计目标)09年4月单选题考查了(系统调用的概念) 串讲内容

第一节 计算机系统结构(识记)

一、层次结构

1.计算机系统的层次结构

目前的计算机系统,一般都具有一种层次结构。从内到外依次为:硬件系统、软件系统、支撑软件和应用软件,最外层是使用计算机的人。

硬件系统主要由中央处理器(CPU)、存储器、输入/输出控制系统和各种输入输出/设备组成。 软件系统包括系统软件、应用软件和支撑软件组成。系统软禁是计算机系统中与硬件结合最经的软件,也是计算机系统中必不可少的软件。例如,操作系统,编译系统等都是系统软件。

支撑软件是可以支撑其他软件开发和维护的软件,例如,数据库、各种接口软件开发工具等都生成软件。

应用软件是按特定领域中的某种需要编写的专用程序,例如。财务管理、人口普查等专用程序都属于应用软件。

2、层次结构:最内层是硬件系统,最外层是使用计算机系统的

人,人与硬件系统之间是软件系统。软件系统又依次为系统软件(支撑软件)应用软件。

计算机开启时,自动执行引导程序。引导程序首先进行系统初始化的工作,然后把操作系统中的核心装入主存储器。此后操作系统便等待用户请求(事件)的发生,当有某个事件出现,硬件便能识别并能发生一个中断,从而通过操作系统,由它的服务程序去处理,处理结束后,又等待下一个事件发生。 二、系统工作框架

1、引导程序:进行系统初始化,把操作系统中的核心程序装入主存储器,并让操作系统的核心程序占用处理器执行。

2、操作系统核心程序:完成自身的初始工作后开始等待用户从键盘或鼠标输入命令,每接收一条命令就对该命令进行处理。 计算机开启时,自动执行引导程序。引导程序首先进行系统初始化的工作,然后把操作系统中的核心装入主存储器。此后操作系统便等待用户请求(事件)的发生,当有某个事件出现,硬件便能识别并能发生一个中断,从而通过操作系统,由它的服务程序去处理,处理结束后,又等待下一个事件发生。

第二节 硬件环境(领会)

一、CPU与外设的并行工作

在现代的通用计算机系统中,为提高计算机的工作效率,均允许

中央处理器和外设并行工作。当执行到一条启动外设的指令时,就按指令中给定的参数启动指定的设备,并把控制移交给输入/输出控制系统,由输入/输出控制系统控制外围设备与主存储器之间的信息传送,外围设备独立工作,不再需要中央处理器干预,于是中央处理器可继续执行其他程序。(详见第6章) 二、存储体系

1、寄存器:是处理器的组成部分,用来存放处理器的工作信息。存取速度快,但造价高。

(1)通用寄存器:存放参加运算的操作数、指令的运算结果等。 (2)指令寄存器:存放当前从主存储器读出的指令。 (3)控制寄存器:存放控制信息以保证程序的正确执性和系统的安全。

A.程序状态字寄存器:存放当前程序执行时的状态。 B.中断字寄存器:记录出现的事件。

C.基址寄存器:设定程序执行时可访问的主存空间的开始地址。 D.限长寄存器:设定程序执行时可访问的主存空间的长度。 2、主存储器:以字节为单位进行编址。主存储器容量较大,能被处理器直接访问,但断电会丢失数据。

3、高速缓冲存储器:也称cache,位于处理器和主存储器之间起到缩短存储时间和缓冲存储的作用。

4、辅助存储器:最常用的辅助存储器有磁盘和磁带。优点是容量大且能永久保存信息,但不能被中央处理器直接访问。 三、保护措施

一般是硬件提供保护手段和保护装置,操作系统利用这些设施配合硬件实现保护。

1、指令分类:

(1)特权指令:不允许用户程序中直接执行的指令。如:启动I/O、设置时钟、设置控制寄存器等。09年7月选择题考了本知识点。

(2)非特权指令:允许用户程序中直接执行的指令。 2、CPU工作状态:

(1)管态:可执行包括特权指令在内的一切机器指令。一般是操作系统程序占用中央处理器时,CPU处于管态。

(2)目态:不允许执行特权指令。一般是用户程序占用中央处理器时,CPU处于目态。09年7月选择题就考了本知识点。

3、存储保护:不同的存储管理方式有不同的实现保护方法(详见第四章)。如可变分区存储管理方式中:基址寄存器的值<=访问地址<=基址寄存器的值+限长寄存器的值。

第三节 操作系统结构(识记)

一、设计目标09年4月解答题考查了本知识点。

1、正确性:能充分估计和把握各种不确定的情况,使操作系统

不仅能保证正确性,且易于验证其正确性。

2、高效性:减少操作系统的开销从而提高计算机系统的效率,尤其对常驻主存储器的核心程序部分更要精心设计。

3、维护性:当系统发现错误或为提高效率而对算法进行调整等工作时,应使操作系统容易维护。

4、移植性:移植性是指能否方便地把操作系统从一个硬件环境移植到另一个新的硬件环境之中。在结构设计时,应尽量减少与硬件直接有关的程序量,且将其独立封装。09年4月选择题考了本知识点。

二、操作系统的层次结构

1、设计方法:无序模块法、内核扩充法、层次结构法、管程设计法等。 2、层次结构法:最大特点是把整体问题局部化。一个大型复杂的操作系统被分解成若干单向依赖的层次,由各层的正确性来保证整个操作系统的正确性。采用层次结构不仅结构清晰,而且便于调试,有利于功能的增加、删减和修改。

3、操作系统层次结构:处理器管理要对中断事件进行处理,要为程序合理地分配中央处理器的工作事件。它是操作系统的核心程序,是与硬件直接有关的部分,因而把它放在最内层。以后的各层依次存放的是存储管理、设备管理和文件管理。即:硬件→处理器管理

→存储管理(设备管理)文件管理。

(1)层次结构的主要优点是有利于系统的设计和调试。实现各层次的功能时都可利用较内层提供的功能,不必知道内层的功能是怎样实现的,只需知道这些功能可以做什么。调试工作可以从最内层开始,最内层只使用硬件提供的功能,调试时无需考虑其它任何部分。一旦最内层调试通过,则第二层可在最内层提供的功能上执行,同样,调试第三层可在第二层提供的功能上执行,依次类推,知道完成各层功能的调试。若在调试某层的功能时发现错误,可能定错误位于当前层,因为较内层的各层次以通过调试。

(2)主要困难:层次的划分和安排。由于每一层只能利用位于它内层提供的功能,因而需要仔细地规划每一层的功能,差异保证操作系统工作过程中不出现双项依赖关系。 三、UNIX系统的结构 1、UNIX层次结构:内核层和外壳层。

(1)内核层:是UNIX操作系统的核心。它具有存储管理、文件管理、设备管理、进程管理以及为外壳层提供服务的系统调用等功能。 (2)外壳层:为用户提供各种操作命令和程序设计环境。 2、外壳层组成:由shell解释程序、支持程序设计的各种语言、编译程序、解释程序、使用程序和系统库等组成。其中其它模块归shell解释程序调用,shell解释程序用来接收用户输入的命令并进

行执行。

3、内核层组成:内核程序用C语言和汇编语言编写。按编译方式可分为:汇编语言文件、C语言文件和C语言全局变量文件。

4、程序运行环境:用户态和核心态。外壳层的程序在用户态运行,内核层的程序在核心态运行。用户态运行的程序称为用户程序,核心态运行的程序称为系统程序。(注:外壳层的用户程序在执行时可通过系统调用来请求内核层的支持) 第四节 操作系统与用户的接口(领会)

一、操作控制命令

1、联机用户:操作控制命令。 2、批处理系统用户:作业控制语言,用来编制作业控制说明书。 二、系统调用

1、系统调用定义:即系统功能调用程序,是指操作系统编制的许多不同功能的供程序执行中调用的子程序。

2.执行模式:系统调用在管态下运行,用户程序在目态下运行,用户程序可以通过“访管指令”实现用户程序与系统调用程序之间的转换。(注:访管指令本身是一条在目态下执行的指令)

3.系统调用分类:文件操作类、资源申请类、控制类、信息维护类。09年4月解答题考查了本知识点。

第五节 UNIX的用户接口(领会)

一、shell命令

1、注册和注销

(1)注册:用户可通过login输入用户名和通过password输入口令,系统注册成功后在shell解释程序控制下,出现提示符(本书采用C shell提示符:%)以交互方式为用户服务。

(2)注销:输入logout或同时按下Ctrl+D键。 2、常见的shell命令

(1)mkdir命令:请求系统建立一个新的文件目录。 (2)rmdir命令:请求系统删除一个空目录。 (3)cd命令:切换当前的工作目录。 (4)pwd命令:显示用户的当前目录。 (5)ls命令:显示一个目录中的文件名。 (6)cp命令:复制一个文件。 (7)mv命令:对文件重新命名。 (8)rm命令:删除一个指定的文件。

(9)cat命令:显示用ASCII码编写的文本文件。

(10)more命令:分屏显示文件内容,按空格键显示下一屏。 3、后台执行的shell命令

(1)方法:在请求后台执行的命令末尾输入字符“&”。

(2)特点:UNIX把一个程序转入后台执行后,不等该程序执行完就显示可以输入新命令的提示符。因此,允许多个任务在后台执行,也允许后台任务和前台任务同时执行。

4、shell文件

(1)定义:用shell命令编辑成的文件称为shell文件。 (2)执行shell文件:csh shell 文件名

(3)把shell文件改成可执行文件:chmod + x shell文件名→以后就可直接在提示符后面直接输入文件名就可执行。 二、UNIX系统调用

1、常用的系统调用

(1)有关文件操作的系统调用: creat:建立文件 open:打开文件 read:读文件 write:写文件 close:关闭文件 link:链接一个文件 unlink:解除文件的链接 lseek:设定文件的读写位置

chmod:改变对文件的访问权限 rename:更改文件名 (2)有关控制类的系统调用:

fork:创建一个子进程 wait:父进程等待子进程终止 exit:终止子进程的执行 exec:启动执行一个指定文件

(3)有关信号与时间的系统调用:UNIX把出现的异常情况或异步事件

以传送信号的方式进行。

kill:把信号传送给一个或几个相关的进程 sigaction:声明准备接收信号的类型

sigreturn:从信号返回,继续执行被信号中断的操作 stime:设置日历时间 time:获取日历时间 times:获取执行所花费的时间

2、trap指令:是UNIX系统中的访管指令。 3、系统调用程序入口表:

(1)作用:实现对系统功能调用程序的统一管理和调度。 (2)构成:系统调用编号、系统调用所带参数个数、系统调用处理程序入口地址、系统调用名称。

4、系统调用实现过程:

(1)步骤一:当处理器执行到trap指令时便形成一个中断事件。此时将暂停当前用户程序的执行,而由UNIX系统内核的“trap处理子程序”来处理这个中断事件。

(2)步骤二:trap处理子程序根据trap指令中的系统调用编号查系统调用程序入口表,得到该系统调用所带的参数个数和相应的处理程序的入口地址。然后,把参数传送到内核的系统工作区,再按

处理程序入口地址转向该系统调用的处理程序执行。

(3)步骤三:当系统调用程序完成处理后,仍需返回到trap处理子程序,由trap处理子程序对被暂停的用户程序进行状态恢复等后续处理,再返回用户程序执行