开篇导论(操作系统概念第七版 第一章)

第一章先从整体的角度形象的描述了操作系统在整个电脑系统中的位置和角色,然后从两个角度来描述操作系统的概念,用户视角和系统视角。对于用户视角作了简单的描述,随后从系统视角展开了详尽的分析,即大型计算机系统(又分为批处理、多道程序系统、分时系统)、桌面系统、多处理系统、分布式系统(又分为客户端/服务器系统、对等网络系统)、集群系统、实施系统(又分为硬实时系统、软实时系统)、手持系统。对各种系统的基本组成和发展历史进行了介绍,然后对比了他们的性能和使用范围,最后总结了他们的发展趋势。
操作系统是管理计算机硬件并停工应用程序运行环境的软件。为人和计算机提供了接口。

运行中的程序才是进程。

分级存储。

SMP:多处理器技术

多道程序设计—>分时系统

两种模式:用户模式和内核模式
一.操作系统结构
1.多道批处理系统
在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。
在多道批处理系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”。然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。其优缺点为:
(1)资源利用率高;
(2)系统吞吐量大:系统吞吐量是指系统在单位时间内所完成的总工作量。能提高系统吞吐量的主要原因可归纳为:第一,CPU和其它资源保持“忙碌”状态;第二,仅当作业完成时或运行不下去时才进行切换,系统开销小;
(3)平均周转时间长;
(4)无交互能力。
2.分时系统
分时系统与多道批处理系统之间有着截然不同的性能差别,(咳咳,分时操作系统采用CPU调度和多道程序设计以提供用户分时计算机的一小部分)它能很好地将一台计算机提供给多个用户同时使用,提高计算机的利用率。其时间间隔一定但是很小。分时系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。其特征为:
(1)多路性:允许在一台主机上同时联接多台联机终端,系统按分时原则为每个用户服务。
(2)独立性:每个用户各占一个终端,彼此独立操作,互不干扰。
(3)及时性:用户的请求能在很短的时间获得响应。
(4)交互性:用户可通过终端与系统进行广泛的人机对话。
3.实时系统
所谓“实时”,是表示“及时”,而实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致的运行。其应用需求主要在实时控制和实时信息处理。

多道与分时的区别:多道可以充分的利用各种资源,但是缺乏没有提供与计算机系统直接交互的功能,分时系统由于切换到频率高,用户可以在运行的期间与之进行交互。【操作系统概念 第七版】
分时操作系统是给不同用户提供程序的使用,而多道程序系统则是不同程序间的穿插运行。

总之,分时操作系统主要是针对于多用户来说的,而多道程序系统主要是针对于多程序来说的,注意用户和程序之间的区别。啰嗦很多然后就要了多道分时环境这个名词~
二.操作系统操作
双重模式操作:用户态,内核态
中断(interrupt)
中断指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程
虽然现在win9x已经有了PNP(即插即用)功能,但是中断冲突仍然是不可避免的,其中最为容易发生冲突的就是IRQ、DMA和I/O。首先我们先了解一下IRQ、DMA和I/O的概念:
1.IRQ(Interrupt Request):
IRQ英文全称Interrupt Request,中文翻译为中断请求线。计算机中有许多设备(例如声卡、硬盘等)他们都能在没有CPU介入的情况下完成一定的工作。但是这些设备还是需要定期中断CPU,让CPU为其做一些特定的工作。如果这些设备要中断CPU的运行,就必需在中断请求线上把CPU中断的信号发给CPU。所以每个设备只能使用自己独立的中断请求线。一般来说在80286以上计算机中,共有16个中断请求线与各种需要用中断的不同外设相连接,(每个中断线有一个标号也就是中断号)。
2、DMA(Direct Memory Access)
计算机与外设之间的联系一般通过两种方法:一是通过CPU控制来进行数据的传送;二是在专门的芯片控制下进行数据的传送。我们所说的DMA,就是不用CPU控制,外设同内存之间相互传送数据的通道,在这种方式下,外设利用DMA通道直接将数据写入存储器或将数据从存储器中读出,而不用CPU参与,系统的速度会大大增加。
3、I/O(INPUT/OUTPUT)
输入/输出端口,也就是计算机配件与CPU连接的接口。每个端口都有自己唯一的一个端口号,这个端口号称为地址。每一个想和CPU通信的外设或配件都有不同的I/O地址,通常在PC机内部一共有1024个地址。

关于中断的一些其他的内容:
在计算机中,各种中断事件很多,其优先级都有规定,否则就会乱套。在计算机中,中断事件的优先级是根据事件的实时性、重要性和软件处理的方便性来安排的。
中断屏蔽也是一个十分重要的功能,所谓中断屏蔽是指通过设置相应的中断屏蔽位,禁止响应某个中断。这样作的目的,是保证在执行一些重要的程序中不响应中断,以免造成迟缓而引起错误。内部中断是指因硬件出错(如突然掉电、奇偶校验错等)或运算出错(除数为零、运算溢出、单步中断等)所引起的中断。内部中断是不可屏蔽的中断。
最后总结一下,硬件中断顾名思义就是由硬件引起的中断,比如一个程序需要用户输入一个数据,但用户一直没有输入,操作系统决定是一直等待用户输入还是转而运行别的进程,一般情况是转而运行别的进程,如果用户的输入到来了,那么键盘驱动器会产生一个中断通知操作系统,操作系统保存正在运行的程序的状态,从而切换到原来的进程处理到来的数据。
所以中断发生是随机的且主要作用是完成进程间切换,从而支持CPU和设备之间的并行。
中断和异常的另一个重要差别是,CPU处理中断的过程中会屏蔽中断,不接受新的中断直到此次中断处理结束。而陷阱的发生并不屏蔽中断,可以接受新的中断。
关于中断的阻止等等一些概念可以查看百度百科http://baike.baidu.com/subview/121718/5143456.htm

陷阱
计算机有两种运行模式:用户态, 内核态。 其中操作系统运行在内核态,在内核态中,操作系统具有对所有硬件的完全访问权限,可以使机器运行任何指令;相反,用户程序运行在用户态,在用户态下,软件只能使用少数指令,它们并不具备直接访问硬件的权限。这就出现了问题,假如软件需要访问硬件或者需要调用内核中的函数该怎么办呢,这就是陷阱的作用了。陷阱指令可以使执行流程从用户态陷入内核(这也就是为什么叫做陷阱,而不是捕猎的陷阱)并把控制权转移给操作系统,使得用户程序可以调用内核函数和使用硬件从而获得操作系统所提供的服务,比如用视频软件放一个电影,视频软件就发出陷阱使用显示器和声卡从而访问硬件。
操作系统有很多系统调用接口供用程序调用。陷阱的发生时间是固定的,比如第一次用视频软件时,在加载视频时软件会向操作系统发送陷阱指令,第二次播放时,软件仍然会在同样的时刻发送陷阱指令。这一点是和中断的明显的差别之一。陷阱是由程序造成的,并且与程序同步。如果程序一而再的被运行,陷阱将总在指令流中相同位置的精确发生。而中断则是由外部事件和其时钟造成的,不具有重复性)

异常
异常就是程序执行过程中的异常行为。比如除零异常,缓冲区溢出异常等。不同的操作系统定义了不同种类和数量的异常并且每个异常都有一个唯一的异常号,异常会扰乱程序的正常执行流程,所以异常是在CPU执行指令时本身出现的问题,比如除数为零而出现的除零异常。异常的产生表示程序设计不合理,所以在编程的时候要尽量避免异常的产生。
三.进程管理
程序是被动的,进程是一个活动的实体
四.内存管理
内存是现在操作系统的中心,CPU可以访问内存,如果一个程序要执行,那么它必须先变换成绝对地址装入内存,随着程序的执行,进程通过产生绝对地址来访问内存中的程序指令和数据。所以有了内存管理的需求 从而改善CPU的利用率和计算机对与用户的相应速率。

最后总结一下常见操作系统的特点:
a.Batch(批处理式)
批处理有单道批处理,还有多道批处理系统,在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。多道批处理系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”。然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。
c. Interactive(交互式)
交互式操作系统由许多短期交易构成,并且下一个交易结果是未知的,用户提交到等待时间少。
c.Time sharing(分时式)
分时系统与多道批处理系统之间有着截然不同的性能差别,(分时操作系统采用CPU调度和多道程序设计以提供用户分时计算机的一小部分)它能很好地将一台计算机提供给多个用户同时使用,提高计算机的利用率。其时间间隔一定但是很小。分时系统是指,在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。
d. Real time(实时系统)
所谓“实时”,是表示“及时”,而实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致的运行。其应用需求主要在实时控制和实时信息处理。
e. Network(网络式)
提供给操作系统一个特征,使的其进入网络,比如,文件共享。
f. Parallel(并行式)
每个处理器运行同一个操作系统的拷贝,这些拷贝通过操作系统总线通信。
g. Distributed(分布式)
这种系统在几个物理处理器中分布式计算,处理器不共享内存或时钟。每个处理器都有其各自的本地存储器。它们通过各自的通信线路在进行通信。
h. Clustered(集群式)
多个计算机耦合成单一的系统并分布于真个集群来完成计算任务。
i. Handheld(手持式)
内存更小,处理速度更慢的个人数字助理(personal digital assistant,PDA).

你可能感兴趣的:(哦-操作系统)