自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(151)
  • 收藏
  • 关注

原创 期末总复习题(六)

一、选择题1、( C )的物理结构对文件随机存取时必须按指针进行,但效率较低。A 连续文件B 索引文件C 链接文件D 多级索引文件2、在用户使用完文件后必须做文件的关闭操作,这是为了( D )。A 把文件的内容写到存储介质上去B 释放使用文件时所占用的内存C 切断进程与用户的联系D 把文件控制块的有关内容写到文件的目录项中去3、相同名字的文件应允许在一个系统中同时存在,解决这个问题的办法是( )。A 采用索引文件B 通过文件共享C 采用多级目录管理D利用文件分级

2021-06-05 20:08:39 3732 3

原创 期末总复习题(四、五)

一、选择题1、在可变式分区分配方案中,某一作业完成后系统收回其主存空间,并与相邻空闲区合并,为此修改空闲区表,造成空闲区数减一的情况是( D )。A 无上邻空闲区,也无下邻空闲区B 有上邻空闲区,但无下邻空闲区C 有下邻空闲区,但无上邻空闲区D 有上邻空闲区,也有下邻空闲区2、分区式存储器管理方式,每个程序( B )。A 一定在分区中连续,部分存放B 一定在分区中连续,整体存放C 可以在分区中不连续,整体存放D 可以在分区中连续,部分存放3、下列选项中对分段存储管理叙述正确

2021-06-05 18:56:22 6693 1

原创 期末总复习题(三)

一、单选题1、进程调度又称低级调度,其主要功能是( D )。A.选择一个作业调入内存B.选择一个主存中的进程调出到外存C.选择一个外存中的进程调入到主存D.将一个就绪的进程投入到运行2、若进程P一旦被唤醒就能够投入运行,系统可能为( D )。A.分时系统,进程P的优先级最高B.抢占调度方式,就绪队列上的所有进程的优先级皆比P的低 C.就绪队列为空队列D.抢占调度方式,P的优先级高于当前运行的进程。3、一个进程P被唤醒后,( D )。A.P就占有了CPUB.P的PCB被移

2021-06-05 17:25:36 4027 1

原创 期末总复习题(二)

一、选择题1、下列步骤中,( C )不是创建进程所必须的。A 建立一个进程控制块B 为进程分配内存C 为进程分配CPUD 将进程控制块放入就绪队列2、在进程管理中,当( B )时,进程从运行状态变为就绪状态。A 进程被调度程序选中B 时间片用完C 等待某一个事件发生D 等待的事件发生3、进程和程序最根本的区别在于( B )。A 对资源的占有类型和数量。B 进程是动态的,而程序是静态的。C 看它们是否能够并发地在处理机上运行D 进程规模较小,程序规模较大4、一个

2021-06-05 16:18:34 2858 5

原创 期末总复习题(一)

一、选择题1、下列选项中,( A )不是操作系统关心的主要问题。A 管理计算机裸机B 设计、提供用户程序与计算机硬件系统的界面C 管理计算机系统资源D 高级程序设计语言的编译器2、多道批处理系统的主要缺点是( C )。A CPU利用率低B 不能并发执行C 缺少交互性D 以上都不是。3、在操作系统中,( D )部分属于微内核。A 输入/输出井的管理程序及作业调度软件B 用户命令解释程序C 磁盘文件目录管理软件D 进程通信服务例程4、通常在分时系统中运行的作业称为( C

2021-06-05 15:32:24 2066 2

原创 文件存储空间的管理

空闲表法和空闲链表法1.空闲表法(1) 空闲表的组织■属于连续分配方式,为所有空闲区建立一-张空闲表,每个空闲区对应一个空闲表项,再将所有空闲区按其起始盘块号递增的次序排列。(2)存储空间的分配与回收■分配过程:可采用首次适应算法或最佳适应算法,顺序地检索空闲表的各表项,直至找到第一个其大小能满足要求的空闲区,再将该盘区分配给用户(进程)同时修改空闲表。■"回收过程:同内存回收的方法。(3) 特点:属连续分配方式,可减少访问磁盘的I/O频率,适应于文件较小的场合或对换区管理中。2.空闲链表

2021-05-23 09:16:46 825

原创 目录管理

文件控制块和索引结点1.文件控制块FCB定义:是操作系统用来描述和控制文件的数据结构。每一个文件都有一个文件控制块,文件控制块的有序集合称为文件目录。FCB包含三类信息:●(1)基本信息●(2)存取控制信息●(3)使用信息一个FCB长度为32B,对于360KB的软盘,可包含112个FCB,占用4KB的存储空间。2.索引结点UNIX系统中,把文件名和文件描述信息分开,由文件描述信息单独构成索引结点(简称i结点)FCB改变为:文件名+指向i结点的指针思考题:引入索引结点后,可减少

2021-05-23 08:56:24 1055

原创 文件和文件系统

文件、记录和数据项文件除了文件名之外,还包括:文件类型、文件长度、物理位置、建立时间等主要属性。文件类型文件系统模型文件操作

2021-05-23 08:25:22 136

原创 磁盘存储器管理

磁盘性能简述磁盘存储器是存放大量数据的理想设备,容量大,可实现随机存取。磁盘设备是一一个相当复杂的机电设备,有专门课程来讲述。本节课只讲述磁盘性能,如:数据组织、磁盘类型、访问时间等。1.数据的组织和格式磁盘设备可包括一到多个物理盘片,每个磁盘片分一个或者两个存储面;每个磁盘面被组织成若干个同心环,称为磁道,各磁道之间留有必要的间隙。每条磁道存储相同数目的二进制位,磁盘密度指每英寸中所存储的位数,内层磁道的密度比外层高。每个磁道逻辑上划分成若干个扇区,一一个扇区称为一个盘块,各扇区之间保留一定

2021-05-23 08:11:15 1059

原创 设备分配

设备分配中的数据结构1.设备控制表DCT系统为每个设备设置一-张设备控制表,用于记录该设备的情况。在设备控制表中,包含:(1)设备类型(2)设备标识符(3)设备队列的队首指针(队列中存放请求设备未被满足的PCB)(4)设备状态(5)与设备相连的控制器表指针(6)重复执行次数。系统规定在设备工作中发生错误时可重复执行次数。2.控制器控制表系统为每个设备控制器设置一张设备控制器表,用于记录该设备控制器的情况。包含:●设备控制器标识符●设备控制器状态●与设备控制器相连的通道表指针

2021-05-16 16:43:13 2351

原创 缓冲管理

缓冲的引入(1)缓和CPU与I/0设备间速度不匹配的矛盾。(2)减少对CPU的中断频率,放宽对CPU中断响应时间的限制。(3)提高CPU和I/0设 备之间的并行性。单缓冲和双缓冲1.单缓冲在单缓冲情况下,每当用户进程发出一个I/0请求时,OS便在主存中为之分配一个缓冲区。例如:在块设备输入时,假定从磁盘把一块数据输入到缓冲区的时间为T;将该缓冲区的数据传送到用户区的时间为M;CPU对这块数据的处理时间为C;由于T与C是可以并行的,可以把系统对每一-块数据的处理时间表示为max(C, T)+M.

2021-05-16 12:38:54 713

原创 I/O控制方式

程序I/O方式在处理机向控制器发出一条I/O指令启动输入设备输入数据时,读出状态寄存器的设备状态,将busy标志位置为1 ;然后,需要不停测试busy标志位,如果busy标志位=1 ,表示输入未完成,处理机继续测试,直到busy标志位=0 ,表明输入数据已进入控制器的数据寄存器中;处理机将数据寄存器中的数据取出1送入指定内存单元中。在程序I/0方式中,从终端输入-一个字符的时间约为100 ms,而将字符送入终端缓冲区的时间小于0. 1 ms。若采用程序I/0方式,CPU约有99. 9ms的时间处于忙一

2021-05-16 12:23:40 722

原创 I/O系统

I/O设备1.I/0设备的类型I/0设备分类的重要指标:(1)设备使用特性(2)数据传输速率(3)数据传输单位(4)设备共享属性按设备的使用特性分类(1)存储设备。如磁盘、磁带等;特点是容量大,价格便宜。(2)输入/输出设备。如:键盘、显示器等,可以接收用户的命令,显示命令的执行结果。按传输速率的高低,可分为:(1)低速设备,指传输速率仅为每秒钟几个字节至数百个字节的一类设备。如:键盘、鼠标器等。(2)中速设备,指传输速率在每秒钟数千个字节至数万个字节的一类设备。如:行式打印机、

2021-05-16 12:23:08 669

原创 存储器管理方式的经典例题

1、某分页系统的逻辑地址结构采用16 位,其中高6位用于页号,低10位用于页内地址,问:这样的地址结构下一页有多少字节?逻辑地址空间可有多少页?一个作业最大空间是多少?有一个程序,访问的逻辑地址分别是2058, 3072, 和1023,请问它们的页号是多少,页内地址是多少? .问题解答:(1)地址总长是16位,其中由于页内地址用了10位,页的大小就是2的10次方B,即1024字节(2)由于页号用了6位,所以逻辑地址可有64页。(3)一个作业的最大空间是64*1024=65536= 64K字节(4)

2021-05-03 13:50:05 6357 1

原创 动态规划答疑篇

⼀、最优子结构详解「最优⼦结构」是某些问题的⼀种特定性质,并不是动态规划问题专有的。 也就是说,很多问题其实都具有最优⼦结构,只是其中⼤部分不具有重叠⼦ 问题,所以我们不把它们归为动态规划系列问题⽽已。我先举个很容易理解的例⼦:假设你们学校有 10 个班,你已经计算出了每 个班的最⾼考试成绩。那么现在我要求你计算全校最⾼的成绩,你会不会 算?当然会,⽽且你不⽤重新遍历全校学⽣的分数进⾏⽐较,⽽是只要在这 10 个最⾼成绩中取最⼤的就是全校的最⾼成绩。我给你提出的这个问题就符合最优⼦结构:可以从⼦问题的

2021-05-01 16:26:38 178 1

原创 请求分段存储管理方式

请求分段中的硬件支持1.段表机制:●基本作用:地址转换●增加段表字段,供程序在换入换出时参考存取方式:标识存取属性只执行、只读或允许读/写访问字段A:记录该段被访问的频繁程度修改位M:该段在进入内存后是否被修改过存在位P:指示本段是否调入内存。增补位:表示本段在运行过程中是否做过动态增长外存始址:本段在外存中的起始地址,即起始盘块号2.缺页中断机构3.地址变换机构分段的共享与保护1.共享段表所有共享段均在共享段表中对应的一个表项2.共享段的分配与回收:(1)共享段的分

2021-04-30 15:17:38 2318 1

原创 页面置换算法

最佳(OPT)置换算法1.基本思想:淘汰以后永不使用的或未来最长时间内不再被访问的页面。2.特点:●理论上:缺页率低、性能最佳;●实际上:无法预知,实现困难;通常用于评价其他算法的优劣。示例1:在一一个请求分页系统中,假定系统为某进程分配了3个物理块数,已知页面走向为2,3,2,1, 5,2,4,5,3, 2,5,2。请用OPT置换算法分析页面置换情况,并计算数缺页率和置换次。(假设 内存中物理块初始均为空)先进先出(FIFO)置换算法1.基本思想:淘汰最先进入内存的页面,即驻留内存时

2021-04-29 17:12:22 2176

原创 请求分页存储管理方式

请求分页中的硬件支持1.页表机制●基本作用:地址转换●增加页表字段,供程序在换入换出时参考状态位P:用于指示该页是否已调入内存访问字段A:记录本页在一段时间内被访问的次数修改位M:该页在调入内存后是否被修改过外存地址:指示该页在外存上的地址(物理块号)2.缺页中断机构:●缺页中断与其他中断的不同:(1)在指令执行期间产生和处理中断信号(2)一条指令在执行期间可能产生多次缺页中断3.地址变换机构内存分配策略和分配算法1.最小物理块数的确定:●保证进程正常运行所需的最小物理块

2021-04-29 16:55:50 2569 2

原创 动态规划详解

动态规划问题的⼀般形式就是求最值。动态规划其实是运筹学的⼀种最优化方法,只不过在计算机问题上应⽤⽐较多,⽐如说让你求最⻓递增⼦序列 呀,最⼩编辑距离呀等等。既然是要求最值,核⼼问题是什么呢?求解动态规划的核⼼问题是穷举。因为要求最值,肯定要把所有可⾏的答案穷举出来,然后在其中找最值呗。动态规划就这么简单,就是穷举就完事了?我看到的动态规划问题都很难啊!⾸先,动态规划的穷举有点特别,因为这类问题存在「重叠⼦问题」,如果 暴⼒穷举的话效率会极其低下,所以需要「备忘录」或者「DP table」来优 化穷举过

2021-04-28 20:17:47 324

原创 虚拟存储器的基本概念

虚拟存储器的引入1.常规存储器管理方式的特征:●一次性、驻留性●情况一:内存空间装不下的大作业无法运行●情况二:作业量大时,无法允许更多的作业并发●扩充内存容量的方法:物理上、逻辑上2.局部性原理:●程序在执行时常呈现局部性规律,并表现在两个方面:(1)时间局限性(2)空间局限性3.虚拟存储器的概念:●逻辑上扩充内存容量的方案:(1)允许作业部分装入,其他页(段)在运行中需要访问时再调入–增加请求调入功能(2) 若内存已满,将某些暂时不用的页(段)调出内存—增加置换功能3.虚拟存

2021-04-21 20:08:46 5938

原创 基本分段存储管理方式

分段存储管理方式的引入■为满足用户和程序员的下述需要:●方便编程●信息共享●信息保护●动态增长●动态链接分段系统的基本原理1.分段:●逻辑地址空间分段,各段长度不等。●每个段均有段名或段号,且从0开始编址。●地址结构:允许一个作业最长有64K个段,每个段的最大长度为64K B。分配原则:为每个段分配一个连续的分区,各分区不必相邻接。2.段表:●系统为每个进程建立一张段表。●作用:实现从逻辑段到物理内存区的映射。●在段表中,每段对应一段表项,记录段号、段长、段基址等。

2021-04-20 19:26:09 2221

原创 基本分页存储管理方式

页面与页表1.页面:等分内存空间:每等份称为物理块,编号: 01234…等分逻辑空间:划分为与物理块大小相同的页面,编号为01234页面大小: 2nBytes ,大小适中、通常为512B~8KB分配原则:1页——>1块;分配给程序的物理块不必相邻接2.地址结构每页大小为4KB,逻辑空间最多有1M个页面。若已知一个逻辑地址空间中的地址为A,页面大小为L,则页号P和页内地址d是多少?p= INT [A/L]d= [A] MOD L例如:某系统的页面大小为1KB,逻辑地址A=217

2021-04-19 21:37:13 1948

原创 连续分配方式

单一连续分配■基本思想:●内存划分为:系统区和用户区●只能用于单用户、单任务的操作系统中■特点:●方法简单,易于实现●单道程序:内存和CPU利用率低,难于实现共享固定分区分配■基本思想:●把内存用户空间划分为若干个固定大小的分区;每个分区中只装入一道作业。■划分分区的方法:●分区大小相等●分区大小不等■具体实现:将分区按大小排队●建立分区使用表表项包括:①分区号、②分区起始地址、③分区大小、④分区状态●当程序装入时,由内存分配程序检索分区使用表●若找到符合要求的分区,则完

2021-04-19 20:50:27 527

原创 存储器管理

存储器的层次结构(1)主存储器(简称内存)作用:保存进程运行时的程序和数据。(2)寄存器和高速缓存作用:缓和内存的访问速度与CPU指令执行速度不匹配的矛盾。(3)磁盘缓存作用:缓和磁盘I/0速度与内存的访问速度不匹配的矛盾。程序的装入几个重要概念:(1)物理地址(绝对地址):计算机内存单元的真实地址。(2)内存空间:物理内存是各程序共享的物质基础,由0~ (m-1) 个物理地址组成。(3)逻辑地址(相对地址):用户的程序地址。(4)逻辑空间:程序地址均从“0”开始。1.绝对装入

2021-04-19 20:15:44 160 1

原创 处理机调度的三道经典例题

作业的两种调度问题在单CPU环境下,设有4道作业,它们的提交时间及执行时间(时间单位:小时)如下:试计算采用先来先服务调度算法(FCFS)和最短作业优先调度算法(SJF)时的平均周转时间和平均带权周转时间,并指出它们的调度顺序。问题解决:首先要明白几个概念:一项作业的完成时间=上一项作业的完成时间+这项作业的执行时间一项作业的周转时间=这项作业的完成时间–这项作业的到达时间一项作业的带权周转时间=这项作业的周转时间/这项作业的执行时间1.先来先服务当在作业调度中采用该算法时,每次从作业后

2021-04-13 22:04:13 4455 1

原创 检测与解除死锁

检测死锁1.资源分配图■资源分配图是描述进程和资源间申请和分配关系的一个有向图。■由一组结点N和一-组边E所组成的一个对偶G=(N,E)。①资源:用方框中的黑圆点(圈)表示②进程:用圆圈中加进程名表示③资源分配边:资源- >进程的一条有向边④资源请求边:进程- >资源的一条有向边2.死锁定理死锁定理: S为死锁状态的充分条件是当且仅当s状态的资源分配图是不可完全简化的。简化方法如下:●(1)找出一个既不阻塞又非独立的进程结点P,P可获得所需资源直至运行完毕,再释放其所占有

2021-04-12 22:03:23 372

原创 避免死锁

安全状态与不安全状态安全状态:系统能按某种进程推进顺序,如<P,P…P。>为每个进程分配所需资源,直到最大需求,使每个进程都可顺利完成。这样的序列<P, P… P.>称为安全序列。不安全状态:不存在安全序列。安全性算法(1) Work[…m]=Available0…m];Finish[…n]=false;(2)从进程集合中寻找满足下列条件的进程Pi:①Finish[i]=false;②Need[ij]SWork[j];若找到,转(3) ;否则,转(4)(3)进程

2021-04-12 21:52:30 675

原创 死锁概述

死锁的概念死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,若无外力作用,它们都将无法再向前推进。产生死锁的原因和必要条件1.产生死锁的原因(1)竞争资源消耗性资源(如:消息)不可抢占性资源(如:打印机)(2) 进程推进顺序不当2.产生死锁的必要条件.(1) 互斥条件(2)请求与保持条件(3)不剥夺条件(4)环路等待条件处理死锁的方法处理死锁的方法:(1)预防死锁(2)避免死锁(3) 检测死锁(4)解除死锁预防死锁通过设置某些限制条件,破坏导致死锁的四个必要

2021-04-10 21:23:28 177

原创 进程调度算法

时间片轮转调度算法基本原理所有就绪进程按FCFS原则进行调度,每次执行一个时间片。当时间片用完而进程未完,则插入就绪队列末尾。特点:简单易行、平均响应时间短,不利于处理紧急任务。多级反馈队列调度算法1.调度机制(1)设置多个就绪队列,赋予不同的优先级和不同长度的时间片。(2)每个队列都采用FCFS算法。(3)按队列优先级调度。2.性能该算法能较好地满足各种类型用户(进程)的需要。(1)终端(交互)型作业用户。(2)短批处理作业用户。(3)长批处理作业用户。有A、B、C三个进

2021-04-05 17:24:54 418

原创 作业调度算法

先来先服务算法适用于作业调度从后备作业队列中选择–个或多个最先进入的作业,将它们调入内存,为它们分配资源、创建进程,然后放入就绪队列。适用于进程调度从就绪进程队列中选择一个最先进入的进程,为之分配处理机,使之投入运行;直到运行完成或阻塞,才会让出处理机。短作业/进程优先算法短作业优先(SJF)从后备队列中选择–个或多个估计运行时间最短的作业调入内存。短进程优先(SPF)从就绪队列中选出一个估计运行时间最短的进程,将处理机分配给它,使它立即执行。优先级调度算法适用于作业调度从后备队

2021-04-05 17:05:42 753

原创 处理机调度的基本概念

三级调度1.高级调度调度对象:作业。主要功能:决定将外存上的哪些作业调入内存。在每次执行作业调度时,都须做以下决定:1)接纳多少个作业2)接纳哪些作业只用于批处理系统。作业调度运行频率低,几分钟一-次。2.低级调度调度对象:进程。主要功能:决定就绪队列中哪个进程获得处理机。是最基本的调度。进程调度运行频率高,几十毫秒一次,算法不能太复杂。3.中级调度内外存的信息对换内存- >外存(挂起状态)外存- >内存(内存有空间,进程重又具备运行条件)目的:便于内存管理扩

2021-04-04 18:22:19 665

原创 线程

线程的基本概念1.线程的引入在20世纪90年代后,多处理机系统得到迅速发展,所以提出了比进程更小的、能独立运行的基本单位----线程,以提高系统内程序并发执行的程度,改善0S的性能。➢创建进程时,需要为它分配资源,建立PCB; .➢撤销进程时,需要回收资源,撤销PCB;➢进程切换时,需要保留当前进程的CPU环境、设置新选中进程的CPU环境,代价较高。由于进程在切换时,付出较大的时空开销,所以,在系统中所设置的进程数不宜过多,否则会影响系统的并发程度。引入线程的目的是简化进程间的通信,以小的开销

2021-04-02 20:15:03 198

原创 进程通信

进程通信的类型进程通信类型包括低级通信和高级通信类型。进程通信指进程之间的信息交换,进程同步所交换的信息量少,称为低级通信。如:信号量机制是有效的同步工具,但作为通信工具,不够理想。缺点:(1)只能传递状态和整数值(控制信息),传送信息量小。(2)进程同步的细节由程序员实现,编程复杂。高级进程通信是指用户可直接利用操作系统所提供的一组通信命令,高效传送大量数据的一种通信方式。优点:其隐藏了进程通信的实现细节,减少了编程的复杂性。高级通信机制可归结为三类:1.共享存储器系统(1)基于共享数据

2021-04-02 10:49:25 2730 1

原创 管程机制

管程的定义管程由三部分组成:(1)局部于管程的共享变量说明;(2)对该数据结构进行操作的一组过程;(3)对局部于管程的数据设置初始值的语句,此外还需为管程赋予一个名字。管程的语法如下:type monitor-name=monitorvariable declarationsprocedure entry P1…);begin… end;procedure entry P(…);begin … end;begininitialization code;end条件变量管程中对每

2021-03-31 21:24:54 1016

原创 SQL Server第六章-多表连接查询

第1关:带 WHERE 子句的多表查询任务描述本关任务:使用带 WHERE 子句的多表查询方法,检索数据表中的指定内容。相关知识为了完成本关任务,你需要掌握:如何使用带 WHERE 子句的方法查询多表数据。理解连接SQL 最强大的功能之一,就是能使用数据检索语句来连接多张数据表。 连接 (Join) 是使用数据库时最重要的操作,所以理解什么情况下,能连接和如何连接是学习 SQL 中极其重要的部分。在你使用连接查询之前,一定要搞清楚数据表之间的关系。那怎么理解数据表之间是有关系的呢?举个例子

2021-03-31 19:45:24 7415

原创 SQL Server第五章-聚合函数在查询中的使用

第1关:AVG() 函数的使用任务描述本关任务:使用函数 AVG() 计算数据表中指定字段的平均值。相关知识为了完成本关任务,你需要掌握:1. AVG() 函数的含义,2. AVG() 函数的用法。返回某一字段的平均值AVG() 函数通过计算某字段(列)内容(行)的个数和它们的数值之和来返回某一字段的平均值。语法规则为:SELECT AVG(column_name)FROM table_name举个例子我们想从表 Customers 中,检索到所有消费者消费金额的平均值。表 Cust

2021-03-31 15:41:35 6041

原创 SQLServer第三章 - 数据的查询(一)

第1关:基本SELECT查询参考代码:USE MallGOSET NOCOUNT ON---------- retrieving multiple column ------------ ********** Begin ********** --select prod_name,prod_price from Products-- ********** End ********** --GO---------- retrieving all column ------------ *

2021-03-31 14:56:05 6765

原创 SQL Server第四章-数据的查询(二)

第1关:通配符%的使用参考代码:USE MallGoSET NOCOUNT ON---------- retrieving with wildcard % ------------ ********** Begin ********** --SELECT *FROM ProductsWHERE prod_name LIKE '%toy%'-- ********** End ********** --GO第2关:通配符_的使用参考代码:USE MallGoSET NOCOU

2021-03-31 14:28:32 5987 3

原创 生产者消费者问题

生产者消费者问题描述在生产者和消费者之间存在多个缓冲区(1)只要有空缓冲区,生产者就可以放产品;(2)只要缓冲区有产品,消费者就可以取出产品。利用信号量机制解决生产者消费者问题(1)分析生产者和消费者进程的业务逻辑,判断进程之间的关系;根据题目的要求,画出生产者-消费者的业务逻辑。(2)如果存在间接制约的关系,按进程互斥的设计步骤执行;(3)如果存在直接制约的关系,按进程同步的设计步骤执行;(4)检查进程之间的同步是否正确。...

2021-03-29 21:54:04 279

原创 进程同步的几个经典案例

苹果与橘子问题问题描述:桌子上有一只盘子,每次只能放入一个水果。爸爸专向盘中放苹果,妈妈专向盘中放橘子,女儿专吃盘中的苹果,儿子专吃盘中的橘子。试用P、V操作实现父、母、儿、女进程的同步。解决方案:由题可知,盘子为互斥资源,因为可以放一个水果,所以empty初值为1;信号量mutex控制对盘子的互斥访问,初值为1;apple 和orange 分别表示盘中苹果和橘子的个数,初值为0。semaphore empty=1,mutex=1,apple=0,orange=0; void father()

2021-03-29 21:09:03 3733

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除