操作系统
文章平均质量分 80
操作系统(operating system,简称OS)是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。
bfhonor
没有天生的高手,更没有永远的菜鸟。
展开
-
操作系统缓冲区管理(单缓冲、双缓冲、循环缓冲以及缓冲池)
一、缓冲区管理(一)什么是缓冲区?有什么作用?缓冲区是一个存储区域,可以由专门的硬件寄存器组成,也可利用内存作为缓冲区。使用硬件作为缓冲区的成本较高,容量也较小,一般仅用在对速度要求非常高的场合(如存储器管理中所用的联想寄存器,由于对页表的访问频率极高,因此使用速度很快的联想寄存器来存放页表项的副本)一般情况下,更多的是利用内存作为缓冲区,“设备独立性软件”的缓冲区管理就是要组织管理好这些缓冲区。(二)单缓冲假设某用户进程请求某种块设备读入若干块的数据。若采用单缓冲的策略,操作系统会在主原创 2021-11-30 14:59:21 · 19494 阅读 · 6 评论 -
操作系统设备的分配与回收
一、设备的分配与回收(一)设备分配时应考虑的因素1. 设备的固有属性设备的固有属性可分为三种:独占设备、共享设备、虚拟设备。独占设备——一个时段只能分配给一个进程(如打印机)共享设备——可同时分配给多个进程使用(如磁盘),各进程往往是宏观上同时共享使用设备,而微观上交替使用。虚拟设备——采用 SPOOLing 技术将独占设备改造成虚拟的共享设备,可同时分配给多个进程使用(如采用 SPOOLing 技术实现的共享打印机)设备的分配算法:先来先服务、优先级高者优先、短任务优先…2. 设备分原创 2021-11-30 14:47:56 · 2315 阅读 · 0 评论 -
I/O设备的概念和分类、I/O控制器及其I/O控制方式
一、IO设备的基本概念与分类(一)什么是I/O设备?“I/O” 就是 “输入/输出”(Input/Output)I/O 设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备,属于计算机中的硬件部件。UNIX系统将外部设备抽象为一种特殊的文件,用户可以使用与文件操作相同的方式对外部设备进行操作。Write操作:向外部设备写出数据Read操作:从外部设备读入数据(二)按使用特性分类(三)按传输速率分类(四)按信息交换的单位分类二、IO控制器(一)机械部件I/原创 2021-11-30 11:12:08 · 6261 阅读 · 0 评论 -
I/O软件层次结构、I/O核心子系统以及假脱机技术(SPOOLing技术)
一、I/O软件层次结构(一)用户层软件(二)设备独立性软件主要实现的功能:②设备的保护。原理类似与文件保护。设备被看做是一种特殊的文件,不同用户对各个文件的访问权限是不一样的,同理,对设备的访问权限也不一样。③差错处理设备独立性软件需要对一些设备的错误进行处理④设备的分配与回收⑤数据缓冲区管理可以通过缓冲技术屏蔽设备之间数据交换单位大小和传输速度的差异⑥建立逻辑设备名到物理设备名的映射关系;根据设备类型选择调用相应的驱动程序用户或用户层软件发出I/O操作相关系统调用的系统调用时原创 2021-11-30 11:08:14 · 1598 阅读 · 2 评论 -
操作系统减少延迟时间的方法和磁盘的管理
一、读写操作时间假设要连续读取橙色区域的 2、3、4扇区:磁头读取一块的内容(也就是一个扇区的内容)后,需要一小段时间处理,而盘片又在不停地旋转因此,如果2、3号扇区相邻着排列,则读完2号扇区后无法连续不断地读入3号扇区必须等盘片继续旋转, 3号扇区再次划过磁头,才能完成扇区读入。结论:磁头读入一个扇区数据后需要一小段时间处理,如果逻辑上相邻的扇区在物理上也相邻,则读入几个连续的逻辑扇区,可能需要很长的“延迟时间”(一)减少延迟时间的方法:交替编号若采用交替编号的策略,即让逻辑上相邻的扇区原创 2021-09-30 21:59:28 · 1085 阅读 · 0 评论 -
操作系统磁盘的结构&磁盘的调度算法
一、磁盘的结构(一)磁盘、磁道、扇区的概念磁盘的表面由一些磁性物质组成,可以用这些磁性物质来记录二进制数据。(二)如何在磁盘中读/写数据需要把“磁头”移动到想要读/写的扇区所在的磁道。磁盘会转起来,让目标扇区从磁头下面划过,才能完成对扇区的读/写操作。(三)盘面、柱面的概念(四)磁盘的物理地址可用(柱面号,盘面号,扇区号)来定位任意一个“磁盘块”。在“文件的物理结构”小节中,我们经常提到文件数据存放在外存中的几号块,这个块号就可以转换成(柱面号,盘面号,扇区号)的地址形式。原创 2021-09-30 21:57:07 · 1520 阅读 · 0 评论 -
文件的基本操作&文件系统的层次结构
一、文件的基本操作(一)创建文件(create系统调用)可以“创建文件”,(点击新建后,图形化交互进程在背后调用了“create 系统调用”)进行 Create 系统调用时,需要提供的几个主要参数:①、所需的外存空间大小(如:一个盘块,即1KB)②、文件存放路径(“D:/Demo”)③、文件名(这个地方默认为“新建文本文档.txt”)操作系统在处理 Create 系统调用时,主要做了两件事:①、在外存中找到文件所需的空间(结合空闲链表法、位示图、成组链接法等管理策略,找到空闲空间)②、原创 2021-09-30 21:52:46 · 764 阅读 · 0 评论 -
操作系统文件存储空间管理(存储空间的划分与初始化)
一、文件存储空间管理(一)存储空间的划分与初始化安装 Windows 操作系统的时候,一个必经步骤是——为磁盘分区(C: 盘、D: 盘、E: 盘等)(二)存储空间管理1. 空闲表法适用于“连续分配方式”如何分配磁盘块:与内存管理中的动态分区分配很类似,为一个文件分配连续的存储空间。同样可采用首次适应、最佳适应、最坏适应等算法来决定要为文件分配哪个区间。如何回收磁盘块:与内存管理中的动态分区分配很类似,当回收某个存储区时需要有四种情况:①回收区的前后都没有相邻空闲区;②回收区原创 2021-09-30 21:50:30 · 1651 阅读 · 0 评论 -
操作系统文件管理“逻辑结构和物理结构”区别
一、逻辑结构VS物理结构文件内部各条记录链式存储:由创建文件的用户自己设计的文件整体用链接分配:由操作系统决定索引文件:从用户视角来看,整个文件依然是连续存放的。如:前1MB存放索引项,后续部分存放记录。5. 索引文件采用索引分配(一)例:C语言创建无结构文件FILE *fp = fopen("text.txt" , "w"); //打开文件if(fp == NULL){ printf("打开文件失败!"); exit(0);}//写入1w个Hello worldfor(int i原创 2021-09-30 21:46:59 · 4455 阅读 · 3 评论 -
操作系统文件的物理结构(文件分配方式)
一、文件的物理结构(文件实现)(一)文件块、磁盘块(二)文件分配方式1. 连续分配连续分配 方式要求 每个文件在磁盘上占有一组连续的块优点 :支持顺序访问和直接访问(即随机访问);连续分配的文件在顺序访问时速度最快缺点 :不方便文件拓展;存储空间利用率低,会产生磁盘碎片2. 链接分配链接分配 采取离散分配的方式,可以为文件分配离散的磁盘块。分为 隐式链接 和 显式链接 两种。(1)隐式链接隐式链接 ——除文件的最后一个盘块之外,每个盘块中都存有指向下一个盘块的指原创 2021-09-30 21:42:30 · 5119 阅读 · 0 评论 -
操作系统文件保护及文件共享
一、文件保护保护文件数据的安全。(一)口令保护优点:保存口令的空间开销不多,验证口令的时间开销也很小。缺点:正确的“口令”存放在系统内部,不够安全。(二)加密保护使用某个“密码”对文件进行加密,在访问文件时需要提供正确的“密码”才能对文件进行正确的解密。优点:保密性强,不需要在系统中存储“密码”缺点:编码/译码,或者说加密/解密要花费一定时间。(三)访问控制在每个文件的FCB(或索引结点)中增加一个访问控制列表(Access-Control List, ACL),该表原创 2021-09-30 21:38:40 · 1505 阅读 · 0 评论 -
操作系统文件的逻辑结构及其文件目录
一、文件的逻辑结构类似于数据结构的“逻辑结构”和“物理结构”。①、如“线性表”就是一种逻辑结构,在用户角度看来,线性表就是一组有先后关系的元素序列,如:a,b, c, d, e ……②、“线性表”这种逻辑结构可以用不同的物理结构实现,如:顺序表/链表。顺序表的各个元素在逻辑上相邻,在物理上也相邻;而链表的各个元素在物理上可以是不相邻的。因此,顺序表可以实现“随机访问”,而“链表”无法实现随机访问。③、可见,算法的具体实现与逻辑结构、物理结构都有关(文件也一样,文件操作的具体实现与文件的逻辑结构、原创 2021-09-30 21:35:26 · 3761 阅读 · 0 评论 -
操作系统文件管理之初始文件管理
一、初识文件管理(一)文件的属性文件名:由创建文件的用户决定文件名,主要是为了方便用户找到文件,同一目录下不允许有重名文件。标识符:一个系统内的各文件标识符唯一,对用户来说毫无可读性,因此标识符只是操作系统用于区分各个文件的一种内部名称。类型:指明文件的类型位置:文件存放的路径(让用户使用)、在外存中的地址(操作系统使用,对用户不可见)大小:指明文件大小创建时间、上次修改时间文件所有者信息保护信息:对文件进行保护的访问控制信息(二)文件内部的数据应该怎样组织起来?(三)文件之间原创 2021-09-30 21:32:50 · 210 阅读 · 0 评论 -
请求分页管理方式及页面分配策略
一、请求分页管理方式请求分页 存储管理与基本分页存储管理的主要区别:①、在程序执行过程中,当所访问的信息不在内存时,由操作系统负责将所需信息从外存调入内存【操作系统要提供请求调页功能,将缺失页面从外存调入内存】,然后继续执行程序。②、若内存空间不够,由操作系统负责将内存中暂时用不到的信息换出到外存【操作系统要提供页面置换的功能,将暂时用不到的页面换出外存】。(一)页表机制(二)缺页中断机构假设此时要访问逻辑地址=(页号,页内偏移量)=(0, 1024)在请求分页系统中,每当要访问的页原创 2021-08-31 20:34:13 · 5568 阅读 · 0 评论 -
页面置换算法(OPT、FIFO、LRU、CLOCK、改进的时钟置换算法)
一、页面置换算法请求分页 存储管理与 基本分页 存储管理的主要区别:①、在程序执行过程中,当所访问的信息不在内存时,由操作系统负责将所需信息从外存调入内存【操作系统要提供请求调页功能,将缺失页面从外存调入内存】,然后继续执行程序。②、若内存空间不够,由操作系统负责将内存中暂时用不到的信息换出到外存【操作系统要提供页面置换的功能,将暂时用不到的页面换出外存】。(一)最佳置换算法(OPT)最佳置换算法(OPT,Optimal):每次选择淘汰的页面将是以后永不使用,或者在最长时间内不再被访问的页原创 2021-08-31 20:31:47 · 17064 阅读 · 2 评论 -
操作系统虚拟内存的基本概念(内存空间的扩充)
一、虚拟内存的基本概念一次性【可用虚拟存储技术解决问题】 :作业必须一次性全部装入内存后才能开始运行。这会造成两个问题:①作业很大时,不能全部装入内存,导致大作业无法运行;②当大量作业要求运行时,由于内存无法容纳所有作业,因此只有少量作业能运行,导致多道程序并发度下降。驻留性 :一旦作业被装入内存,就会一直驻留在内存中,直至作业运行结束。事实上,在一个时间段内,只需要访问作业的一小部分数据即可正常运行,这就导致了内存中会驻留大量的、暂时用不到的数据,浪费了宝贵的内存资源。(二)局部性原理时间原创 2021-08-31 20:27:10 · 2041 阅读 · 0 评论 -
基本分段存储管理方式以及段页式管理方式
一、基本分段存储管理方式(一)分段进程的地址空间:按照程序自身的逻辑关系划分为若干个段,每个段都有一个段名(在低级语言中,程序员使用段名来编程),每段从0开始编址内存分配规则:以段为单位进行分配,每个段在内存中占据连续空间,但各段之间可以不相邻。(二)段表问题:程序分多个段,各段离散地装入内存,为了保证程序能正常运行,就必须能从物理内存中找到各个逻辑段的存放位置。为此,需为每个进程建立一张段映射表,简称“段表”。(三)地址变换(四)分段、分页管理的对比页 是信息的物理单原创 2021-08-31 20:25:05 · 1557 阅读 · 0 评论 -
具有快表的地址变换机构以及两级页表的存储结构
一、具有快表的地址变换机构(一)什么是快表(TLB)快表,又称联想寄存器(TLB, translation lookaside buffer ),是一种访问速度比内存快很多的高速缓存( TLB不是内存! ),用来存放最近访问的页表项的副本,可以加速地址变换的速度。与此对应,内存中的页表常称为慢表。(二)引入快表后,地址的变换过程① CPU给出逻辑地址,由某个硬件算得页号、页内偏移量,将页号与快表中的所有页号进行比较。② 如果找到匹配的页号,说明要访问的页表项在快表中有副本,则直接从中原创 2021-08-31 20:21:47 · 2489 阅读 · 1 评论 -
非连续分配管理方式的基本分页存储管理的基本概念
一、 基本分页存储管理的基本概念(非连续分配管理方式)连续分配 :为用户进程分配的必须是一个 连续的内存空间。非连续分配 :为用户进程分配的可以是一些 分散的内存空间。(一)什么是“地址空间”逻辑地址(相对地址):是指由程序产生的与段相关的偏移地址部分。物理地址(绝对地址):是指出现在CPU外部地址总线上的寻址物理内存的地址信号,是地址变换的最终结果地址。(二)什么是分页存储将内存空间分为一个个大小相等的分区(比如:每个分区4KB),每个分区就是一个“页框”(页框=页帧=内存块原创 2021-08-31 20:17:40 · 629 阅读 · 0 评论 -
内存扩充的覆盖与交换、以及内存空间的分配和回收的连续分配管理方式
一、内存空间的扩充(一)覆盖覆盖技术的思想:将程序分为多个段(多个模块)。常用的段常驻内存,不常用的段在需要时调入内存。内存中分为一个“固定区”和若干个“覆盖区”。需要常驻内存的段放在“固定区”中,调入后就不再调出(除非运行结束)不常用的段放在“覆盖区”,需要用到时调入内存,用不到时调出内存必须由程序员声明覆盖结构,操作系统完成自动覆盖。缺点:对用户不透明,增加了用户编程负担。覆盖技术只用于早期的操作系统中,现在已成为历史。(二)交换交换(对换)技术的设计思想:内存空间紧张时原创 2021-08-31 20:15:11 · 1096 阅读 · 0 评论 -
连续分配管理方式的动态分区分配算法(首次适应、最佳适应、最坏适应、邻接适应算法)
一、动态分区分配算法动态分区分配算法:在动态分区分配方式中, 当很多个空闲分区都能满足需求时,应该选择哪个分区进行分配?(一)首次适应算法算法思想:每次都从低地址开始查找,找到第一个能满足大小的空闲分区。如何实现:空闲分区以地址递增的次序排列。每次分配内存时顺序查找空闲分区链(或空闲分区表),找到大小能满足要求的第一个空闲分区。(二)最佳适应算法算法思想:由于动态分区分配是一种连续分配方式,为各进程分配的空间必须是连续的一整片区域。因此为了保证当“大进程”到来时能有连续的大片空原创 2021-08-31 20:11:11 · 3845 阅读 · 0 评论 -
操作系统内存的基础知识和内存管理的概念
一、内存(一)什么是内存?有何作用?内存可存放数据。程序执行前需要先放到内存中才能被CPU处理——缓和CPU与硬盘之间的速度矛盾。1. 几个常用的数量单位2. 指令的工作原理指令的工作基于“地址”。每个地址对应一个数据的存储单元可见,我们写的代码要翻译成CPU能识别的指令。这些指令会告诉CPU应该去内存的哪个地址读/写数据,这个数据应该做什么样的处理。在这个例子中,我们默认让这个进程的相关内容从地址#0开始连续存放,指令中的地址参数直接给出了变量 x 的实际存放地址(物理地址)。原创 2021-08-31 20:07:44 · 277 阅读 · 0 评论 -
死锁的处理策略—预防死锁、避免死锁、检测和解除死锁
一、死锁(一)什么是死锁?哲学家进餐问题中,如果5位哲学家进程并发执行,都拿起了左手边的筷子…在并发环境下,各进程因竞争资源而造成的一种互相等待对方手里的资源,导致各进程都阻塞,都无法向前推进的现象,就是“死锁”。发生死锁后若无外力干涉,这些进程都将无法向前推进。(二)死锁、饥饿、死循环的区别死锁:各进程互相等待对方手里的资源,导致各进程都阻塞,无法向前推进的现象。饥饿:由于长期得不到想要的资源,某进程无法向前推进的现象。比如:在短进程优先(SPF)算法中,若有源源不断的短进程到来,则原创 2021-08-23 12:19:34 · 7735 阅读 · 0 评论 -
管程的相关概念以及死锁的产生的必要必要条件和处理策略
一、管程(一)为什么要引入管程?(二)管程的定义和基本特征管程是一种特殊的软件模块,有这些部分组成:①、局部于管程的共享数据结构说明;②、对该数据结构进行操作的一组过程;③、对局部于管程的共享数据设置初始值的语句;④、管程有一个名字。Tips: “过程”其实就是“函数”。管程的基本特征:①、局部于管程的数据只能被局部于管程的过程所访问;②、一个进程只有通过调用管程内的过程才能进入管程访问共享数据;③、每次仅允许一个进程在管程内执行某个内部过程。(三)扩展1:用管程解决生产者消原创 2021-08-23 12:17:26 · 507 阅读 · 0 评论 -
吸烟者问题、读者—写者问题以及哲学家进餐问题的实现
一、吸烟者问题假设一个系统有三个抽烟者进程和一个供应者进程。每个抽烟者不停地卷烟并抽掉它,但是要卷起并抽掉一支烟,抽烟者需要有三种材料:烟草、纸和胶水。三个抽烟者中,第一个拥有烟草、第二个拥有纸、第三个拥有胶水。供应者进程无限地提供三种材料,供应者每次将两种材料放桌子上,拥有剩下那种材料的抽烟者卷一根烟并抽掉它,并给供应者进程一个信号告诉完成了,供应者就会放另外两种材料再桌上,这个过程一直重复(让三个抽烟者轮流地抽烟)本质上这题也属于“生产者-消费者”问题,更详细的说应该是“可生产多种产品的单生产者原创 2021-08-23 12:14:27 · 691 阅读 · 0 评论 -
生产者消费问题以及多生产者—消费者问题实现思想
一、生产者消费问题系统中有一组生产者进程和一组消费者进程,生产者进程每次生产一个产品放入缓冲区,消费者进程每次从缓冲区中取出一个产品并使用。(注:这里的“产品”理解为某种数据)生产者、消费者共享一个初始为空、大小为n的缓冲区。只有 缓冲区没满 时,生产者才能把产品放入缓冲区,否则必须等待。 【缓冲区没满→生产者生产】只有 缓冲区不空 时,消费者才能从中取出产品,否则必须等待。 【缓冲区没空→消费者消费】缓冲区是临界资源,各进程必须互斥地访问。PV操作题目分析步骤:①、关系分析。原创 2021-08-23 12:12:15 · 5214 阅读 · 1 评论 -
信号量机制的相关概念及其实现进程互斥、进程同步和进程前驱关系的方法
一、信号量机制之前学习的这些进程互斥的解决方案分别存在哪些问题?①、进程互斥的四种软件实现方式(单标志法、双标志先检查、双标志后检查、Peterson算法)②、进程互斥的三种硬件实现方式(中断屏蔽方法、TS/TSL指令、Swap/XCHG指令)在双标志先检查法中,进入区的“检查”、“上锁” 操作无法一气呵成,从而导致了两个进程有可能同时进入临界区的问题;所有的解决方案都无法实现“让权等待”1965年,荷兰学者Dijkstra提出了一种卓有成效的实现进程互斥、同步的方法——信号量机制原创 2021-08-23 12:10:19 · 982 阅读 · 0 评论 -
进程同步和进程互斥的软件、硬件实现方法
一、进程同步并发行带来了异步性,有时需要通过进程同步解决这种异步问题。有的进程之间需要相互配合的完成工作,各进程的工作推进需要遵循一定的先后顺序。二、进程互斥进程的“并发”需要“共享”的支持。各个并发执行的进程不可避免的需要共享一些系统资源(比如内存,又比如打印机、摄像头这样的I/O设备)我们把一个时间段内只允许一个进程使用的资源称为临界资源。许多物理设备(比如摄像头、打印机)都属于临界资源。此外还有许多变量、数据、内存缓冲区等都属于临界资源。对临界资源的访问,必须互斥地进行。互斥,亦称原创 2021-08-23 12:06:51 · 2387 阅读 · 2 评论 -
时间片轮转(RR)、优先级调度算法以及多级反馈队列调度算法
一、调度算法(一)时间片轮转(RR, Round-Robin)例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用时间片轮转调度算法,分析时间片大小分别是2、5时的进程运行情况。常用于分时操作系统,更注重“响应时间”,因而此处不计算周转时间1. 时间片大小为22. 时间片大小为5如果时间片太大,使得每个进程都可以在一个时间片内就完成,则时间片轮转调度算法退化为先来先服务调度算法,并且会增大进程响应时间。因此时间片不能太大。另一方面,进程调度、切换是有时间代价的(保存、恢原创 2021-08-23 12:04:27 · 24019 阅读 · 5 评论 -
调度算法先来先服务(FCFS)、最短作业优先(SJF)和最高响应比优先(HRRN)算法
一、调度算法(一)先来先服务(FCFS,First Come First Serve)例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用先来先服务调度算法,计算各进程的等待时间、平均等待时间、周转时间、平均周转时间、带权周转时间、平均带权周转时间。(二)短作业优先(SJF,Shortest Job First)1. 短作业/进程优先调度算法例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用非抢占式的短作业优先调度算法,计算各进程的等待时间、平均等待时间、周转时间、原创 2021-08-23 12:00:39 · 19932 阅读 · 4 评论 -
处理机调度概念、进程调度的时机、调度方式及其切换与过程以及调度算法评价指标
一、处理机调度(一)基本概念当有一堆任务要处理,但由于资源有限,这些事情没法同时处理。这就需要确定某种规则来决定处理这些任务的顺序,这就是“调度”研究的问题。(二)调度的三个层次1. 高级调度高级调度(作业调度)【简化理解:好几个程序需要启动,到底先启动哪个】。按一定的原则从外存的作业后备队列中挑选一个作业调入内存,并创建进程。每个作业只调入一次,调出一次。作业调入时会建立PCB,调出时才撤销PCB。2. 低级调度低级调度(进程调度/处理机调度)—— 按照某种策略从就绪队列中选原创 2021-08-18 14:19:37 · 2095 阅读 · 1 评论 -
线程的概念、实现方式以及多线程模型
一、线程(一)什么是线程,为什么要引入线程?还没引入进程之前,系统中各个程序只能串行执行。进程是程序的一次执行。但这些功能显然不可能是由一个程序顺序处理就能实现的。有的进程可能需要“同时”做很多事,而传统的进程只能串行地执行一系列程序。为此,引入了“线程”,来增加并发度。可以把线程理解为“轻量级进程”。线程是一个基本的CPU执行单元,也是程序执行流的最小单位。引入线程之后,不仅是进程之间可以并发,进程内的各线程之间也可以并发,从而进一步提升了系统的并发度,使得一个进程内也可以并发处理各种任原创 2021-08-18 14:15:44 · 293 阅读 · 0 评论 -
进程控制的实现原语和进程通信(IPC)相关概念
一、进程控制(一)什么是进程控制?进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。简化理解:反正进程控制就是要实现进程状态转换(二)如何实现进程控制?用“原语”实现(三)如何实现原语的“原子性”?原语的执行具有原子性,即执行过程只能一气呵成,期间不允许被中断。可以用 “关中断指令”和“开中断指令”这两个特权指令实现原子性(四)进程控制相关的原语...原创 2021-08-18 14:13:41 · 1066 阅读 · 0 评论 -
进程相关概念组成特征、组织方式及其状态与转换
一、进程(一)进程的概念程序:是静态的,就是个存放在磁盘里的可执行文件,如:QQ.exe。进程:是动态的,是程序的一次执行过程,如:可同时启动多次QQ程序。同一个程序多次执行会对应多个进程1. 进程的组成——PCB操作系统要记录PID、进程所属用户ID(UID)【基本的进程描述信息,可以让操作系统区分各个进程】还要记录给进程分配了哪些资源(如:分配了多少内存、正在使用哪些I/O设备、正在使用哪些文件)【可用于实现操作系统对资源的管理】还要记录进程的运行情况(如:CPU使用时间、磁盘使原创 2021-08-18 14:07:34 · 419 阅读 · 0 评论 -
操作系统的运行机制、中断异常以及系统调用
一、操作系统的运行机制(一)程序是如何运行的?在这里插入图片描述“指令”就是处理器(CPU)能识别、执行的最基本命令。注:很多人习惯把 Linux、Windows、MacOS 的“小黑框”中使用的命令也称为“指令”,其实这是“交互式命令接口”,注意与本节的“指令”区别开。本节中的“指令”指二进制机器指令(二)内核程序 v.s. 应用程序我们普通程序员写的程序就是“应用程序”微软、苹果有一帮人负责实现操作系统,他们写的是“内核程序”由很多内核程序组成了“操作系统内核”,或简称“内核(Ker原创 2021-08-15 22:08:53 · 701 阅读 · 0 评论 -
操作系统的发展、分类以及体系结构
一、操作系统的发展(一)手工操作阶段(二)批处理阶段——单道批处理系统引入脱机输入/输出技术(用外围机+磁带完成),并由监督程序负责控制作业的输入、输出【操作系统的雏形】(三)批处理阶段——多道批处理系统(四)分时操作系统分时操作系统:计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。主要优点:用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。主要缺点:不能优先处理原创 2021-08-15 22:06:06 · 853 阅读 · 0 评论 -
操作系统的概述、功能目标及其四个特征
一、计算机系统概述(一)操作系统的定义操作系统(Operating System, OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配;以提供给用户和其他软件方便的接口和环境;它是计算机系统中最基本的系统软件。在这里插入图片描述在这里插入图片描述(二)操作系统的功能和目标1. 作为系统资源的管理者执行一个程序前需要将该程序放到内存中,才能被CPU处理。在这里插入图片描述2. 向上层提供方便易用的服务封装思想:操作系统把一些丑陋的硬件功能封装成简单原创 2021-08-14 21:24:09 · 1116 阅读 · 0 评论 -
操作系统【进程的控制和描述(二)】
(四)、进程同步(五)、经典进程的同步问题(六)、进程通信(七)、线程的基本概念(八)、线程的实现原创 2020-08-27 22:45:01 · 1248 阅读 · 0 评论 -
操作系统中进程的控制和描述(一)【前趋图和程序执行、进程的基本状态转换及进程的创建、终止、阻塞、唤醒、挂起与激活 】
进程的描述与控制操 作 系 统 所 具 有 的 四 大 特 征 也 都 是 基 于 进 程 而 形 成 的 , 并 从 进 程 的 角 度 对 操 作 系 统 进 行 研 究 。(一)、前趋图和程序执行1.1 前趋图前趋图(Precedence Graph),是指一个有向无循环图,可记为DAG(Directed Acyclic Graph),它用于描述进程之间执行的先后顺序。图中的每个结点可用来表示一个进程或程序段,乃至一条语句,结点间的有向边则表示两个结点之间存在的偏序(Partial Orde原创 2020-08-15 20:27:40 · 4852 阅读 · 0 评论 -
计算机操作系统引论【操作系统的目标和作用、发展过程以及其基本特性】
一、操作系统的目标和作用(一)、OS的目标(1)、方便性: 一个未配置0S的计算机系统是极难使用的。(2)、有效性: 第一层含义是提高系统资源的利用率。 第二层含义是提高系统的吞吐量方便性和有效性是设计0S的两个重要目标。(3)、可扩充性: 为适应计算机硬件、体系结构以及计算机应用发展的要求,容易升级(4)、开放性: 开放性是指系统能遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。(二)、OS的作用1. OS作为用户与计算机硬件系统之间的接口①、命令方式:操作员级。由OS提供了原创 2020-06-08 22:43:32 · 716 阅读 · 0 评论