
操作系统
星辰浩宇
路在脚下
展开
-
进程与线程
基本概念:进程是对运行时程序的封装,是系统进行资源调度和分配的的基本单位,实现了操作系统的并发;线程是进程的子任务,是CPU调度和分派的基本单位,用于保证程序的实时性,实现进程内部的并发;线程是操作系统可识别的最小执行和调度单位。每个线程都独自占用一个虚拟处理器:独自的寄存器组,指令计数器和处理器状态。每个线程完成不同的任务,但是共享同一地址空间(也就是同样的动态内存,映射文件,目标代码等...原创 2019-08-30 17:29:15 · 117 阅读 · 0 评论 -
中断机构和中断处理程序
中断在操作系统中有着特殊重要的地位,它是多道程序得以实现的基础,同时也是设备管理的基础,中断处理程序是I/O系统中最低的一层,它是整个I/O系统的基础。1.中断简介 1. 中断和陷入 1) 中断 2) 陷入2. 中断向量表和中断优先级 1) 中断向量表中断源的识别标志,可用来形成相应的中断服务程序的入口地址或存放中断服务程序的首地址称为中断向量。在Pc/AT中由硬...原创 2019-09-01 07:40:43 · 1094 阅读 · 0 评论 -
缓冲区管理
在现代操作系统中,几乎所有的I/O设备在与处理机交换数据时都用了缓冲区。缓冲的引入 引入缓冲区的原因有很多,可归结为以下几点: (1) 缓和CPU与I/O设备间速度不匹配的矛盾。 (2) 减少对CPU的中断频率,放宽对CPU中断响应时间的限制。 (3) 解决数据粒度不匹配的问题。 (4) 提高CPU和I/O设备之间的并行性。单缓冲区和双缓冲区 1. 单缓冲区...原创 2019-09-08 21:05:02 · 3990 阅读 · 1 评论 -
设备无关性
计算机系统的输入输出设备种类、型号、规格繁多,所以必须屏蔽设备的物理特性,向用户提供一个统一、简便的使用接口,实现所谓的与设备无关性(设备独立性)。所谓方便,是指用户能摆脱具体物理设备的繁琐规定的束缚而方便灵活地使用设备。所谓统一,是指对各种不同的设备都使用同一界面。例如,在UNIX系统中从各种输入设备输入信息都使用系统调用read,向各种输出设备传送信息都使用系统调用write.一、...原创 2019-09-01 07:40:25 · 9130 阅读 · 0 评论 -
磁盘的驱动调度
一、磁盘的物理结构二. 磁盘的类型 对于磁盘,可以从不同的角度进行分类。最常见的有:将磁盘分成硬盘和软盘、单片盘和多片盘、固定头磁盘和活动头(移动头)磁盘等。下面仅对固定头磁盘和移动头磁盘做些介绍。 (1) 固定头磁盘。 (2) 移动头磁盘。 盘块物理地址的计算: 柱面号,磁道号,扇区号。 假定以L,M,N分别表示盘组的柱面数,盘面数和扇区数。B表示...原创 2019-09-01 07:40:12 · 2270 阅读 · 0 评论 -
设备的分配
一、设备分配的功能当进程向系统提出I/O请求后,由设备分配程序按照一定的策略把所要求的设备分配给该进程,为确保CPU与设备之间能进行通信,还应分配相应的控制器和通道。二、设备分配时应考虑的因素系统必须具有一种合理的设备分配策略,该策略与下述的四个因素有关;1)设备的固有属性2)系统采用的分配算法3)设备分配的安全性4)设备的无关性,用户程序与实际使用的物理设备无关。...原创 2019-08-27 21:07:11 · 13933 阅读 · 0 评论 -
进程的描述
进程的定义和特征 1. 进程的定义 对于进程的定义,从不同的角度可以有不同的定义,其中较典型的定义有: (1) 进程是程序的一次执行。 (2) 进程是一个程序及其数据在处理机上顺序执行时所发生的活动。 (3) 进程是具有独立功能的程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。 2. 进程的特征 进程和程序是两个截然不同的概念,除...原创 2019-08-27 21:06:54 · 1668 阅读 · 0 评论 -
进程控制
进程控制是进程管理中最基本的功能,用于创建和撤消进程,并对进程在整个生命周期中各种状态转换进行有效控制。进程控制一般是由OS的内核中的原语来实现的。操作系统内核 操作系统内核中含有许原语,可以划分为: (1) 系统状态 (2) 用户状态 1. 支撑功能 (1) 中断处理。 (2) 时钟管理。 (3) 原语操作。 2. 资源管理功能 ...原创 2019-08-29 18:46:16 · 426 阅读 · 0 评论 -
进程同步
引入进程后,虽然使系统中的多道程序并发执行,有效地改善资源利用率,显著地提高系统的吞吐量,但却使系统变得更加复杂。如果不能采取有效的措施(同步),对并发进程的运行进行管理,将对系统资源的无序争夺给系统造成混乱,使并发处理的结果存在着不确定性。进程同步的基本概念 1. 两种形式的制约关系 1) 间接相互制约关系 2) 直接相互制约关系 2. 临界资源(Critical Resou...原创 2019-08-29 18:46:07 · 421 阅读 · 0 评论 -
I/O控制方式
I/O控制方式的发展 随着计算机技术的发展,I/O 控制方式也在不断地发展,经历了以下阶段: (1) 程序 I/O 方式; (2) 中断驱动方式; (3) 直接存储器访问方式; (4) I/O通道访问方式程序 I/O 方式 早期的计算机系统中, 没有中断系统,所以CPU和I/O设备进行通信,传输数据时CPU速度远快...原创 2019-08-26 11:05:09 · 1139 阅读 · 0 评论 -
输入输出系统
外部设备:除CPU、主存之外的其它设备。一、设备管理的目的1)合理地利用外部设备:提高设备的并行性和均衡性。2)方便用户:对各种不同的设备都使用同一界面。二、设备管理的功能· 根据各类设备的特点确定相应的分配策略。(包括:设备分配策略,分配的方式,分配技术和选择用户的算法。)· 启动设备完成实际的输入输出操作。· 向用户提供统一、友好的使用界面。(设备独立性)...原创 2019-08-26 10:50:13 · 443 阅读 · 0 评论 -
离散分配的存储管理方式
分页存储管理方式分页存储管理的基本方法1. 页面和物理块 (1) 页面。 (2) 页面大小。2. 地址结构 分页地址中的逻辑地址结构如下:3. 页表 在分页系统中,为能在内存中找到每个页面所对应的物理块,系统又为每个进程建立了一张页面映像表,简称页表地址变换机构 1. 基本的地址变换机构 进程在运行期间,需要对程序和数据的地址进行变换,即将用户地址空间中的...原创 2019-08-26 09:53:27 · 1859 阅读 · 0 评论 -
处理机调度的层次和调度算法的目标
一个作业从提交开始,往往要经历下述三级调度,其所作的工作包括: 1. 选择作业 2. 分配资源 3. 建立作业的进程 4. 建立有关的表格 5. 作业的善后处理处理机调度的层次 1. 高级调度(High Level Scheduling) 用于决定把后备队列中的哪些作业调入内存, 为它们...原创 2019-09-01 07:39:11 · 669 阅读 · 0 评论 -
调度算法
在 OS 中调度的实质是一种资源分配,因而调度算法是指:根据系统的资源分配策略所规定的资源分配算法。对于不同的系统和系统目标,通常采用不同的调度算法。目前存在的多种调度算法中,有的算法适用于作业调度,有的算法适用于进程调度;但也有些调度算法既可用于作业调度,也可用于进程调度。先来先服务(FCFS)和短作业优先(SJF)调度算法先来先服务(first-come first-served,F...原创 2019-08-26 07:56:50 · 619 阅读 · 0 评论 -
实时调度
在实时系统中,可能存在着两类不同性质的实时任务,即硬实时(HRT)任务和软实时(SRT)任务,它们都联系着一个截止时间。为保证系统能正常工作,实时调度必须能满足实时任务对截止时间的要求。为此,实现实时调度应具备一定的条件。实现实时调度的基本条件1. 提供必要的信息 (1) 就绪时间。 (2) 开始截止时间和完成截止时间。 (3) 处理时间。 (4) 资源要求。 (5)...原创 2019-08-26 07:57:37 · 1414 阅读 · 0 评论 -
死锁问题
定义:死锁,是指多个进程在运行过程中因争夺资源而造成的一种僵局,若无外力作用, 这些进程都将无法再向前推进。产生死锁的原因:产生死锁的原因可归结为如下两点: (1) 竞争资源。当系统中供多个进程共享的资源数目不足以满足诸进程的需要时,会引起资源的竞争而产生死锁。 (2) 进程间推进顺序非法。进程在运行过程中,请求和释放资源的顺序不当,也同样会导致产生进程死锁。...原创 2019-08-26 07:54:55 · 1155 阅读 · 0 评论 -
存储器的层次结构
多层结构的存储器系统 存储器的多层结构 基本的三级存储:CPU寄存器,主存,辅存。计算机系统存储层次示意图 ...原创 2019-08-26 08:15:36 · 636 阅读 · 0 评论 -
程序的装入和链接
用户程序要在系统中运行,必须先将它装入内存,然后再将其转变为一个可以执行的程序,通常都要经过以下几个步骤:(1) 编译; (2) 链接; (3) 装入。 程序的链接1. 静态链接方式 在程序运行之前,先将各目标模块及它们所需的库函数链接成一个完整的装配模块,以后不再拆开。2. 装入时动态链接(Load-time Dy...原创 2019-08-26 08:35:01 · 1343 阅读 · 0 评论 -
连续分配存储管理方式
连续分配:为一个用户程序分配一段连续的内存空间。包括:单一连续分配、固定分区分配、动态分区分配以及动态重定位分配。离散分配:分页存储、分段存储。单一连续分配 内存分为系统区、用户区和空闲区三部分,系统区仅提供给OS使用;用户区内存中,仅装有一道用户程序。 系统区 用户区 空闲区 固定分区分配 划分分区的方法: (1) 分区大小相等(指所有的内存分区大小...原创 2019-08-26 09:05:32 · 933 阅读 · 0 评论 -
对换技术
多道程序环境下的对换技术 对换:把内存中暂时不能运行的进程或暂时不用的程序或数据,调出到外存上,以便腾出足够的内存空间,再把具备运行条件的进程或进程所需要的程序和数据调入内存。对换分为如下两类: (1) 整体对换。 (2) 页面(分段)对换。 对换空间的管理 1. 对换空间管理的主要目标 在具有对换功能的OS中,通常把磁盘空间分为文件区和对换区两部分。对换空间管理的主要目...原创 2019-08-26 09:24:04 · 7180 阅读 · 0 评论 -
经典进程的同步问题
在多道程序环境下,进程同步问题十分重要,也是相当有趣的问题,因而吸引了不少学者对它进行研究,由此而产生了一系列经典的进程同步问题,其中较有代表性的是“生产者—消费者”问题、“读者—写者问题”、“哲学家进餐问题”等等。生产者-消费者问题 1. 利用记录型信号量解决生产者-消费者问题 假定在生产者和消费者之间的公用缓冲池中具有n个缓冲区,这时可利用互斥信号量mutex实现诸进程对缓冲池的互斥...原创 2019-08-29 18:45:44 · 1509 阅读 · 0 评论