操作系统笔记

绪论

操作系统的基本概念

操作系统描述和概念

计算机系统自下而上分为4部分:硬件,操作系统,应用程序和用户。操作系统管理各种计算机硬件,为应用程序提供基础,充当计算机硬件和用户之间的中介。
综上所述,操作系统是指控制和管理整个计算机系统的硬件和软件资源,合理地组织,调度计算机的工作和资源的分配,进而为用户和其他软件提供方便接口和环境的程序集和。操作系统是计算机系统中最基本的系统软件。是计算机和用户之间的接口。

操作系统的特征
1,并发

并发是指两个或多个事件在同一时间间隔内发生。注意并行(是同一时刻发生) 操作系统的并发性是指计算机系统中同时存在多个运行的程序,因此它具有处理和调度多个程序同时执行的能力。在操作系统中,引入进程的目的是使程序并发执行。

2,共享

资源共享是指系统中的资源可供内存中多个并发执行的进程共同使用。
(1)互斥共享
系统中某些资源虽然可以供多个进程使用但是一段时间只能规定一个进程访问该资源。
(2)同时访问方式
系统还有一类资源允许在一段时间内由多个进程同时访问。这里的同时通常是宏观的,微观上可能是不同进程交替访问资源,例如磁盘设备。
并发和共享是操作系统两个最基本的特征两者之间互为存在的条件:
①资源共享是以程序的并发为条件的。
②若系统不能对资源共享实施有效的管理,必将影响程序的并发执行。

3,虚拟

把一个物理上的实体变成若干逻辑上的对应物。例如:让一个处理器分时使用尔模拟为多个用户提供服务的情况。
虚拟技术可以归纳为:时分复用技术,如处理器的分时共享;空分复用技术,如虚拟存储器。

4,异步

多道程序环境允许多个程序并发执行,但由于资源有限,进程的执行并不是一贯到底的,而是由于资源有限,走走停停,以不可预知的速度向前推进,这就是进程的异步性。

操作系统的目标和功能

为了给多道程序提供良好的运行环境,操作系统应该具有下面几个方面的功能:处理机管理,存储器管理,设备管理和文件管理。

1.操作系统作为计算机系统资源的管理者

(1)处理机管理
多道程序环境下,处理机的分配和运行都以进程为基本单位,因而对处理机的管理可归结为对进程的管理。并发是指在计算机内同时运行多个进程,因此进程何时创建,何时撤销,管理,以及如何避免冲突,合理共享是进程管理的最重要的任务。进程管理的主要功能:进程控制,进程同步,进程通信,死锁处理,处理机调度
(2)存储器管理
存储器管理主要是为了给多道程序提供良好的运行环境,主要包括:内存分配和回收,地址映射,内存保护,共享和内存扩充等功能
(3)文件管理
计算机中的信息都是以文件的形式存在,操作系统中负责文件管理的部分称为文件系统,文件管理包括:文件存储空间的管理,目录管理以及文件读写管理和保护
(4)设备管理
主要任务是完成用户的I/O请求,方便用户使用各种设备,并提高设备的利用率,主要包括缓冲管理,设备分配,设备处理和虚拟设备等功能

2.操作系统作为用户和计算机硬件系统之间的接口

为了让用户方便快捷的使用计算机硬件运行自己的程序,操作系统提供了为用户的接口。
一类是命令接口:用户利用这些操作命令来组织和控制作业的执行;
另一类是程序接口:编程人员用它们来请求操作系统的服务。

命令接口

使用命令接口进行作业抗旨的主要方式有两种,联机控制方式和脱机控制方式。按作业控制方式的不同,可将命令接口分为联机命令接口和脱机命令接口
联机命令接口又称为交互式命令接口,适用于分时或实时系统的接口。可以这样理解:用户说一句话,操作系统做一件事,并作出反馈,强调了交互性
脱机命令接口又称为批处理命令接口:适用于批处理系统,由一组作业控制命令组成。可以这样理解:用户要把操作系统要做的事情卸载清单上,操作系统按照清单上的内容逐条完成。

程序接口

程序接口由一组系统调用组成。 用户通过在程序中使用这些系统调用来请求操作系统为其提供服务,如使用外部设备,申请分配和回收内存及其他要求。当前最为流行的是图形用户界面GUI。

3.操作系统实现了对计算机资源的扩充

没有任何软件支持的计算机称为裸机。它仅构成计算机系统的物质基础。而实际呈现在用户面前的计算机系统是经过若干层如软件改造的计算机。

操作系统的发展阶段

手工操作阶段(无操作系统)

计算机所有工作都需要人为干预。
缺点:用户独占主机,资源利用率低。CPU等待手工操作,利用不充分。

批处理阶段
单道批处理系统

系统对作业的处理成批进行,但是内存中始终保持一道作业。单道批处理系统实在解决人机矛盾及CPU和I/O设备速率不匹配的矛盾中形成的。特征如下:
(1)自动性(2)顺序性(3)单道性
但是面临的问题:高速的CPU等待低速CPU。

多道批处理系统

允许多个程序同时进入内存并允许它们在CPU中交替运行,这些程序共享系统中的各种软硬件资源。其是宏观上并行,微观上串行的。
优点:资源利用率高,共享计算机资源,资源得到充分利用。系统吞吐量大,CPU和其他资源保持忙碌状态。缺点:用户响应时间较长。用户交互性差,作业平均周转时间长
相关技术问题:
1,如何分配处理器
2,如何进行多道程序的内存分配
3,I/O设备如何分配
4,如何组织和存放大量的程序和数据,以便用户使用并保证其安全性和一致性。

分时操作系统

所谓分时技术,是指把处理器的运行时间分成很短的时间片,按时间片轮流分配给各联机作业使用。分时系统的主要特征如下:
(1)同时性。也称多路性,允许多个终端用户同时共享一台主机。
(2)交互性。用户能够方便地与系统进行人机对话,用户通过终端采用人机对话的方式直接控制程序运行。
(3)独立性。系统多个用户可以彼此独立地进行操作,互不干扰,单个用户感觉不到别人也在使用这台计算机。
(4)及时性。用户请求能在很短时间内获得响应。

实时操作系统

为了能在某个时间限制内完成某些紧急任务而不需要时间片排队,诞生了实时操作系统。这里的限制可以分为两种情况:若某个动作必须绝对地在规定地时刻发生,则称为硬实时系统。若能够偶尔违反时间规定而且不会引起任何永久性损害,则称为软实时系统。实时操作系统地主要特点:及时性和可靠性

操作系统运行环境

处理器运行模式

计算机系统中,通常CPU执行两种不同性质地程序:一种是操作系统内核程序;另一种是用户自编程序。对操作系统而言,前者是后者地管理者,因此”管理程序“要执行一些特权指令,而”被管理程序“处于安全考虑不能执行这些指令。
特权指令:不允许用户直接使用地指令,如I/O指令,置中断指令…
非特权指令:是指允许用户直接使用地指令。
具体实现上,CPU地运行模式分为用户态和核心态。

内核

内核是计算机上配置的底层软件,管理系统的各种资源,可以看作是连接应用程序和硬件的一座桥梁,包括下面四种内容

1,时钟管理

时钟是计算机各种部件中最关键的设备。第一功能是计时,操作系统需要时间管理。另外通过时钟中断的管理,可以实现进程的切换。在分时操作系统中采用时间片轮转调度,在实时系统中按截止时间控制运行

2,中断机制

引入中断技术的初衷是提高多道程序运行环境中CPU的利用率,而且主要是针对外部设备的。后来逐步得到发展,形成了多种类型,称为操作系统各项操作的基础。中断机制中,只有一小部分属于内核负责现场保护。

3,原语

按层次结构设计的操作系统,底层必然是一些可被调用的公用小程序,它们各自完成一个规定的操作。特点如下:

  • 处于操作系统的最底层,是最接近硬件的部分。
  • 这些程序的运行具有原子性,其操作只能一气呵成。
  • 运行时间段且调用频繁。
    通常把上述特点的程序称为原语。定义原语的方法是关闭中断,让其所有动作不可分割的完成后再打开终端。
4,系统控制的数据结构和处理

系统中用来登记状态信息的数据结构很多,如作业控制块,PCB等等。常见操作下面三种:

  • 进程管理。进程状态管理,调度和分派,创建和撤销进程控制块等。
  • 存储器管理。存储器的空间分配和回收,内存信息保护程序,代码对换程序等.
  • 设备管理
中断和异常

中断分为可屏蔽中断和不可屏蔽中断。异常可分为故障,自陷和终止中断是操作系统必须提供的功能
中断:也称外中断,是CPU处理外部设备的事件。
异常:也称内中断,是指CPU执行指令内部的事件,如程序的非法操作码,地址越界,运算溢出等。

系统调用

用户程序可以通过执行陷入程序(访管指令或trap指令)来发起系统调用,请求操作系统提供服务。相当于把CPU权主动交给内核程序,从用户态进入核心态。

操作系统结构

分层法
  • 便于系统调试和验证。
  • 容易扩充和维护。系统中增加或者修改,替换一层时,只要不改变相应层间的接口,就不会影响其他层。
    问题:
  • 依赖关系固定,合理定义各个层困难
  • 效率差
模块化

将操作系统按功能划分为若干具有一定独立性的模块。模块内部又分为子模块。注意划分模块时需要注意大小带来的模块复杂性和模块间的联系冗余。内聚性和耦合性。
优点

  • 提高了操作系统设计的正确性,可理解性和可维护性
  • 增强了操作系统的可适应性
  • 加速了操作系统的开发过程
    缺点
  • 模块间的接口规定难以满足对接口的实际需求
  • 无法找到一个可靠的决定顺序
宏内核

宏内核的优点和微内核相反。目前的主流操作系统,linux,windows,ios,macos大多使用宏内核的构架。

微内核

是指将内核中最基本的功能保留在内核,而将哪些不需要在核心态执行的功能转移到用户态执行,从而降低内核复杂性。
特点:

  • 内核足够小
  • 基于C/S模式
  • 应用机制和策略分离原理
  • 采用面向对象技术
    功能:
  • 进程线程管理
  • 低级存储器管理
  • 中断和陷入处理
外核

操作系统引导

进程与线程(408)

进程和线程

进程的概念和特征

多道程序环境下,允许多个程序并发执行,此时它们失去了封闭性,为此引入线程概念。为了使参与并发执行的每个程序独立运行,设置了进程控制块PCB来进行控制和管理进程。PCB是进程存在的唯一标志。
进程定义:

  • 进程是程序的一次执行过程
  • 进程是一个程序及其数据在处理机上顺序执行时发生的活动
  • 进程是具有独立功能的程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位
    进程特征
  • 动态性。具有一定生命周期,会动态产生,变化和消亡。
  • 并发性。指多个进程实体同存在内存中,能在一段时间内同时运行。
  • 独立性
  • 异步性
进程的状态和转换
  • 运行态。进程正在处理机上运行
  • 就绪态。进程获得了处理机外的一切资源,一旦得到处理机即可运行。
  • 阻塞态。等待某一个事件而暂停运行。
  • 创建态。进程正在被创建,尚未找到就绪态。
  • 终止态。进程正从系统中消失,可能是进程正常结束或其他原因退出。

用户接口和作业管理(PPT)

进程管理(PPT)

处理机调度

存储管理

存储管理的功能和目标

存储器层次至少3级,寄存器,主存,辅存。寄存器和主存也称为可执行存储器,进程可以访问;辅存的访问通过I/O设备来实现。存储管理是对可执行存储器管理。
存储组织是指再存储技术和CPU寻址技术许可范围内组织合理的存储结构

  • 依据是访问速度匹配关系,容量要求和价格
  • “寄存器-内存-外存”结构
  • “寄存器-缓存-内存-外村”结构
    最佳状态应该是各层次的存储器都处于均衡的繁忙状态(如:缓存命中率正好使主存读写保持繁忙)
概念
  • 虚地址空间:一个程序被编译,链接后所限定的地址的集合----逻辑地址空间。
    目标程序中指令和数据放置的位置,不考虑物理存储器的大小和信息存放的实际位置,只规定每个进程中互相关联的信息的相对位置-----相对地址,是一个运行进程访问的地址。
  • 实地址空间:进程在执行时实际存放其指令和数据的物理空间,是CPU能直接访问的内存的物理地址空间。CPU可直接访问的内存地址-----实地址。
    将运行进程所访问的虚拟地址空间和实地址空间区分开来,为进程的大小可远大于内存空间创造了条件

文件系统

设备管理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值