您好,欢迎来到独旅网。
搜索
您的当前位置:首页四川大学(软件)操作系统简答题

四川大学(软件)操作系统简答题

来源:独旅网


From the perspective of design, what are the main modules inside the OS kernel? And

give a short description of each of them.

从设计的角度来看,操作系统内核中的主要模块是什么?对每一项做一个简短的描述

答案:包括进程管理(调度)模块、文件管理模块、设备管理模块、存储管理模块、网络模块

(以下非教材内找到,仅供参考)

进程管理模块:当多个程序同时运行时,解决处理器(CPU)时间的分配问题。

文件管理模块:主要负责文件的存储、检索、共享和保护,为用户提供文件操作的方便

设备管理模块:根据用户提出使用设备的请求进行设备分配,同时还能随时接收设备的请求(称为中断),如要求输入信息。

存储管理模块:为各个程序及其使用的数据分配存储空间,并保证它们互不干扰。

网络模块:提供对多种网络通信标准的访问并支持许多网络硬件

(以下为教材内容)

操作系统内核的典型功能:

进程管理:进程的创建和终止;进程的调度和分派;进程切换;进程同步以及对进程间通信的支持;进程控制块的管理

内存管理:给进程分配地址空间;交换;页和段的管理

I/O管理:缓冲区管理;给进程分配I/O通道和设备

支持功能:中断处理;记账;监视

How a child process is created by call the system call (E.g. fork( ) in Linux or CreateProcess() in Windows). Give a description of the process.

如何通过调用系统调用来创建子进程

答案:

一般步骤:1.给新进程分配一个唯一的进程标识号。2.给进程分配空间。3.初始化进程控制块。4.设置正确的连接。5.创建或扩充其他的数据结构。

Linux下,通过系统调用创建的步骤:使用fock()函数,1.为最新进程在进程表中分配一个空项2.为子进程赋一个唯一的进程标识符3.生成一个父进程上下文的逻辑副本,不包括共享内存区4.增加父进程拥有的所有文件的计数器,以表示有一个另外的进程现在也拥有这些文件5.把子进程设为就绪态6.向父进程返回子进程的进程号,对子进程返回零

List advantages of ULTs over KLTs and disadvantages of ULTs compared to KLTs.

列出对于内核级线程来说,用户级线程的优势与劣势

答案:

以下为教材课后习题答案

列出用户级线程优于内核级线程的三个优点。

1.由于所有线程管理数据结构都在一个进程的用户地址空间中,线程切换不需要内核模式的特权,因此,进程不需要为了线程管理而切换到内核模式,这节省了在两种模式间进行切换(从用户模式到内核模式;从内核模式返回用户模式)的开销。

2.调度可以是应用程序专用的。一个应用程序可能倾向于简单的轮询调度算法,而另一个应用程序可能倾向于基于优先级的调度算法。调度算法可以去适应应用程序,而不会扰乱底层的操作系统调度器。

3.用户级线程可以在任何操作系统中运行,不需要对底层内核进行修改以支持用户级线程。线程库是一组供所有应用程序共享的应用级软件包。

4.7 列出用户级线程相对于内核级线程的两个缺点。

1.在典型的操作系统中,许多系统调用都会引起阻塞。因此,当用户级线程执行一个系统调用时,不仅这个线程会被阻塞,进程中的所有线程都会被阻塞。

2.在纯粹的用户级进程策略中,一个多线程应用程序不能利用多处理技术。内核一次只把一个进程分配给一个处理器,因此一次进程中只能有一个线程可以执行。

以下为网络搜索答案

用户级线程的优点:

(1) 线程的调度不需要内核直接参与,控制简单。

(2) 可以在不支持线程的操作系统中实现。

(3) 创建和销毁线程、线程切换代价等线程管理的代价比内核线程少得多。

(4) 允许每个进程定制自己的调度算法,线程管理比较灵活。这就是必须自己写管理程序,与内

核线程的区别

(5) 线程能够利用的表空间和堆栈空间比内核级线程多。

(6) 同一进程中只能同时有一个线程在运行,如果有一个线程使用了系统调用而阻塞,那么整个进程都会被挂起。另外,页面失效也会产生同样的问题。

缺点:

(1) 资源调度按照进程进行,多个处理机下,同一个进程中的线程只能在同一个处理机下分时复用

What are the three methods to implement mutual exclusion?

实现互斥的三种方法是什么?

答案:(1)使用硬件方法实现互斥:使用中断禁用、使用专用机器指令(2)使用信号量实现互斥:使用计数信号量/一般信号量、使用二元信号量、使用互斥量(3)使用管程方法实现互斥:一个管程一次只能被一个进程访问

Give a description of the similarities and differences between simple paging and fixed partition

描述简单分页和固定分区之间的相似性和差异

答案:两者都把内存划分为不同的区或页,但简单分页是将内存划分为大小相等的页框,同时将每个进程也划分为大小与页框相等的页,装入进程时,将进程所有的页装入到内存的页框中,但不要求连续;而固定分区在划分区时,分区的大小可以不同,进程需要装入一个分区之中。两者都没有外部碎片,都有内部碎片

Figure to show the process of Address-Translation in a Combined Paging/Segmentation System and describe the process of address translation.

画图说明段页式系统中的地址转换过程,并对地址转换过程进行描述

答案:

当一个特定进程运行时,使用一个寄存器记录该进程段表的起始地址。对于每一个虚拟地址,处理器使用段号部分来检索进程段表以寻找该段的页表。然后虚拟地址的页号部分用于检索页表并查找对应的页框号。最后结合虚拟地址的偏移量来产生需要的物理地址。

What is I/O buffer?Give a description of different ways of the organization of I/O buffer.

I / O缓冲是什么?描述不同的方式组织的I / O缓冲。

答案:

I/O缓冲:在输入请求发出前就开始执行输入传送,并且在输出请求发出一段时间之后才开始执行输出传送。

单缓冲:当用户进程发出I/O请求时,操作系统给该操作分配一个位于内存中系统部分的缓冲区。对于面向块的设备:输入传送的数据被放到系统缓冲区中。当传送完成时,进程把该块移到用户

空间,并立即请求另一块。对于面向流的I/O,单缓冲以每次传送一行或一个字节的方式使用,

双缓冲:操作系统给该操作分配两个系统缓冲区。在一个进程往一个缓冲区中传送数据(取数据)的同时,操作系统正在清空(或填充)另一个缓冲区

循环缓冲:如果进程需要爆发式地执行大量的I/O操作,仅有双缓冲是不够的,这就需要多于两个缓冲区的方案来缓解不足。当使用两个以上的缓冲区时,这组缓冲区自身被当做循环缓冲区。

Describe what Operating System is and give a description of its Evolution.

描述操作系统是什么,并描述它的演化过程。

答案:操作系统是控制应用程序执行的程序,并充当应用程序与计算机硬件之间的接口。他有三个目标:方便:操作系统使计算机更易于使用;有效:操作系统允许以更有效的方式使用计算机系统资源;扩展能力:构造操作系统时,应该允许在不妨碍服务的前提下有效地开发、测试和引进新的系统功能

演化过程:20世纪40年代至50年代中期,计算机为串行处理,这时还没有操作系统;50年代中期,第一个批处理操作系统出现,后来又出现了多道批处理操作系统。60年代后,分时操作系统出现。

Draw a figure to show seven-state process model, and briefly describe events that lead to each state transition.

绘制一个图来显示七态进程模型,并简要描述导致每个状态转换的事件。

答案:

新建态->就绪/挂起态及新建态->就绪态:当创建一个新进程时,该进程或者加入就绪队列,或者加入就绪/挂起队列。

就绪/挂起态->就绪态:如果内存中没有就绪态进程,操作系统需要调入一个进程继续执行。此外当处于就绪/挂起态的进程比处于就绪态的任何进程的优先级都高时,也可进行此转换

就绪态->就绪/挂起态:当释放内存以得到足够的空间的唯一方法是挂起一个就绪态进程时,操作系统会挂起就绪态进程。或者操作系统确信高优先级的阻塞态进程很快就会就绪,操作系统就会选择挂起一个低优先级的就绪态进程,而不是高优先级阻塞态进程。

就绪态->运行态:需要选择一个新进程运行时,操作系统会选择一个处于就绪态的进程

运行态->就绪态:最常见的原因是,正在运行的进出层达到了“允许不中断执行”的最大时间段;其次,如果操作系统给不同进程分配了不同的优先级,低优先级的运行态进程就会被抢占,高优先级进程进入运行态;最后,如果进程自愿释放对处理器的控制,也会造成此类转换。

运行态->退出态:如果当前正在运行的进程表示自己已经完成或取消,则它将被操作系统终止

运行态->就绪/挂起态:如果由于位于阻塞/挂起队列中的具有较高优先级的进程变得不再被阻塞,操作系统抢占这个进程,可以直接把这个运行进程转换到就绪/挂起队列

运行态->阻塞态:如果进程请求它必须等待的某些事件,则进入阻塞态。

阻塞态->就绪态:当所等待的事件发生时,阻塞态的进程转换到就绪态

阻塞态->阻塞/挂起态:如果没有就绪进程,则至少一个阻塞进程被换出,为另一个没有阻塞的进程让出空间。如果操作系统确定当前正在运行的进程,或者就绪进程为了维护基本的性能要求而需要更多的内存空间,则,即使有可用的就绪态进程也可能出现这种转换

阻塞/挂起->阻塞:一个进程终止,释放空间,阻塞/挂起队列中有一个进程比就绪/挂起队列中任何进程的优先级都要高,并且操作系统有理由相信阻塞进程的时间很快就会发生,此转换就会进行

阻塞/挂起->就绪/挂起:如果等待的事件发生了,则处于阻塞/挂起态的进程可转换到就绪/挂起态

List the four control problems associated with concurrency and briefly define each.

列出与并发相关的四个控制问题,并简要定义每个问题。

答案:

(只找到三个)

生产者/消费者问题:有一个或多个生产者生产某种类型的数据(记录、字符),并放置在缓冲区中;有一个消费者从缓冲区中取数据,每次取一项;系统保证避免对缓冲区的重复操作,即任何时候,只能有一个主体(生产者或消费者)可以访问缓冲区。问题是要确保这种情况,当缓存已满时,生产者不会继续向其中添加数据;当缓存为空时,消费者不会从中移走数据。

读者/写者问题:有一个由多个进程共享的数据区,这个数据区可以是一个文件或者一块内存空间,甚至可以是一组寄存器;一些进程(reader)只能读取这个数据区中的数据,一些进程(writer)只能往数据区中写数据;此外还必须满足以下条件:1.任意多的读进程可以同时读这个文件2.一次只有一个写进程可以写文件3.如果一个写进程正在写文件,那么禁止任何读进程读文件。即读进程不需要排斥其他读进程,而写进程需要排斥其他所有进程。

哲学家就餐问题:一张圆桌上有一大碗面,5个哲学家每人一个盘子一把叉子。每位想吃饭的哲学家做到分配的位置上,使用盘子两侧的叉子,取面吃面。问题是:设计一套礼仪(算法)以允许哲学家吃饭。算法必须保证互斥(没有两位哲学家同时使用同一把叉子),同时还要避免死锁和饥饿。

Give a description of the similarities and differences between dynamic partitioning and segmentation

描述动态分区和分段之间的相似性和差异

答案:动态分区是根据程序进程大小来分区,不会产生内部碎片,但随着内存中进程的不断换入换出,会产生外部碎片。分段是将进程划分成若干个段,但段的长度不必相等,一个进程可以有程序段、数据段和堆栈段,这些段在内存中的地址可以不连续,分段有点类似于动态分区。但不同的是,分段中,一个程序可以占用多个分区,且分区不要求连续。分段同样消除了内部碎片,但会产生外部碎片。不过由于进程被分成多个小块,外部碎片会很小。

Figure to show the process of Address-Translation in virtual paging system. Show the TLB, one-level page table, M and Disk in this figure

画图显示出虚拟分页系统的地址转换过程,在图中画出TLB、一级页表、M(memory)和磁盘

答案:

What is the meaning and relationship of Long-term scheduling,Middle-term scheduling,short-term scheduling.

长程调度,中程调度,短程调度的意义和关系是什么

答案:

长程调度:决定是否把进程添加到当前活跃的进程集合中

中程调度:是交换功能的一部分,它决定是否把进程添加到哪些至少部分在内存在并且可以被执行的进程集合中

短程调度:决定下一次执行哪一个就绪程序

三者的关系如图:

List and briefly describe delay elements are involved in a disk read or write.

列出并简要描述被引入到磁盘读或写中的延迟元素

答案:

寻道时间(seek time):磁头定位到磁道所需要的时间

旋转延迟(rotational delay):磁头达到扇区开始位置的时间

存取时间(access time):寻道时间和旋转延迟的总和

传输时间(transfer time):磁头执行读操作或写操作所需的时间

Describe the general elements that maybe included in PTE when designing a virtual paging system

描述在设计虚拟分页系统时可能包含在PTE中的一般元素

答案:

PTE包含:

页框号:用于对应内存中的页框

P位:表示它所对应的页当前是否在内存中

M位(修改位):表示相应页的内容从上一次装入内存中到现在是否已经改变

其他控制位:如果需要在页一级控制保护或共享,则需要用于这些目的的位

In virtual memory environment, what are the advantages that only portion of pieces of a process need be in main memory for the process to run?

在虚拟内存环境中,进程中只有部分需要在主存中以便运行,优点是什么?

答案:①可在内存中保留多个进程:由于对任何特定的进程都仅仅装入它的某些块,故有足够的

空间放置更多进程;②进程可以比内存的全部空间还大:对任何特定的进程都仅仅装入它的某些块,不需要全部装入

List the reasons for process suspension

列出进程挂起的原因

答案:

交换(swapping):操作系统需要释放足够的内存空间,以调入并执行处于就绪态的进程

其他OS原因:操作系统可能挂起后台进程或工具程序进程,或者被怀疑导致问题的进程

交互式用户请求(interactive user request):用户可能希望挂起一个程序的执行,目的是为了调试或与一个资源的使用进行连接

定时(timing):一个进程可能会周期性地执行(例如记账或系统监视进程),而且可能在等待下一个时间间隔时被挂起

父进程请求(parent process request):父进程可能会希望挂起后代进程的执行,以检查或修改挂起的进程,或者协调不同后代进程之间的行为

List and briefly define three techniques for I/O operations

列出并简要说明I/O操作的三种技术

答案:

程序控制I/O(programmed I/O):处理器代表一个进程给I/O模块发送一个I/O命令;该进程

进入忙等待,直到操作完成才可以继续执行

中断驱动I/O(interrupt-driven I/O):处理器代表进程向I/O模块发出一个I/O命令。有两种可能性:如果来自进程的I/O指令是非阻塞的,那么处理器继续执行发出I/O命令的进程的后续指令。如果I/O指令是阻塞的,那么处理器执行的下一条指令则来自操作系统,他将当前的进程设置为阻塞态并且调度其他进程

直接存储器访问(direct memory access即DMA):一个DMA模块控制内存和I/O模块之间的数据交换。为传送一块数据,处理器给DMA模块发请求,并且只有当整个数据块传送结束后,他才被中断。

Give 3 different restore strategies, once a deadlock is detected

一旦发现死锁,给出3种不同的恢复策略

答案:①取消所有的死锁进程(最常用)②把每个死锁进程回滚到前面定义的某些检查点(checkpoint),并且重新启动所有进程(要求在系统中,构造回滚和重启机制。风险是原来的思索可能再次发生,但并发进程的不确定性通常能保证不会发生这种情况)③连续取消死锁进程,直到不再存在死锁④连续抢占资源直到不再存在死锁

List and briefly define five file organizations.

列出并简要说明五个文件组织

答案:

堆是最简单的文件组织形式。数据按它们到达的顺序被采集,每个记录由一串数据组成。

顺序文件是最常用的文件组织形式。在这类文件中,每个记录都使用一种固定的格式。所有记录

都具有相同的长度,并且由相同数目、长度固定的域,按特定的顺序组成。由于每个域的长度和位置已知,因此只需要保存各个域的值,每个域的域名和长度是该文件结构的属性。

索引顺序文件保留了顺序文件的关键特征:记录按照关键域的顺序组织起来。但它还增加了两个特征:用于支持随机访问的文件索引和溢出文件。索引提供了快速接近目标记录的查找能力。溢出文件类似于顺序文件中使用的日志文件,但是溢出文件中的记录可以根据它前面记录的指针进行定位。

索引文件:只能通过索引来访问记录。其结果是对记录的放置位置不再有,只要至少有一个索引的指针指向这条记录即可。此外,还可以使用长度可变的记录。

直接文件或散列文件:直接文件使用基于关键字的散列。

Please describe the page replacement policy of clock strategy

请描述页面置换策略中的时钟策略

答案:最简单的时钟策略需要给每一页框关联一个附加位,称为使用位。当某一页首次装入内存时,则将该页框的使用位设置为1;当该页随后被访问到时(在访问产生缺页中断之后),它的使用位也会被置为1 。对于页面置换算法,用于置换的候选页框集合被视为一个循环缓冲区,并且有一个指针与之相关联。当一页被置换时,该指针被设置成指向缓冲区下一页框。当需要置换一页时,操作系统扫描缓冲区,以查找使用位被置为0的一个页框。每当遇到一个使用位为1的页框时,操作系统就将该位置为0;如果在这个过程开始时,所有页框的使用位均为0,则选择遇到的第一个页框置换;如果所有页框的使用位为1,则指针在缓冲区中完整地循环一周,把所有使用位都置为0,且停留在最初的位置上,置换该页框中的页。

What is the difference between RR and VRR? How VRR avoids the disadvantages of RR.

轮转法(RR)和虚拟轮转法(VRR)有什么区别?VRR如何避免RR的缺点

答案:两者在进行调度时都遵循:当一个正在运行进程的时间片用完后,他返回就绪队列;当一个进程为I/O而被阻塞时,它加入一个I/O队列。而VRR的新特点是,解除了I/O阻塞的进程都被转移到一个FCFS的辅助列队中。每当进行一次调度决策时,辅助队列中的进程优先于就绪队列中的进程。当一个进程从辅助队列中调度时,它的运行时间不会长于基本时间段减去它上一次在就绪队列正被选择运行的总时间。公平性优于轮转法

What is the advantage of HRRN compared with FCFS and SPN?

最高响应比优先(HRRN)与先来先服务(FCFS)和最短进程优先(SPN)相比有什么优势?

答案:最高响应比优先法是对FCFS方式和SPN方式的一种综合平衡。FCFS方式只考虑每个作业的等待时间而未考虑执行时间的长短,而SPN方式只考虑执行时间而未考虑等待时间的长短。因此,这两种调度算法在某些极端情况下会带来某些不便。HRRN调度策略同时考虑每个作业的等待时间长短和估计需要的执行时间长短,从中选出响应比最高的作业投入执行。

Describe the process of a DMA operation.

描述DMA运行过程

答案:当处理器想读或写一块数据时,它通过向DMA模块发送以下信息来给DMA模块发出一条命令:请求读操作或写操作的信号,通过在处理器和DMA模块之间使用读写控制线发送;线管的I/O设备地址,通过数据线传送;从存储器中读取或往寄存器中写的起始地址,在数据线上传送,并由DMA模块保存在其地址寄存器中;读或写的字数,也通过数据线传输,并由DMA模块保存在其数据计数寄存器中。此后处理器继续执行其他工作。DMA模块直接从存储器或往存储器中传送整块数据,一次传输一个字,并且数据不再需要通过处理器。传送结束后,DMA模块给处理器发送一个中断信号。

What is user mode? What is system mode? What is the reason for using the two modes?

用户态是什么?系统态(又可称为控制态(control mode),特权态,内核态(kernel mode))是什么?使用这两种模式的原因是什么?

答案:

用户态:用户程序通常在该模式下运行,只能受限地访问内存,且不允许访问外围设备,占用CPU的能力被剥夺, CPU资源可以被其他程序获取

系统态/内核态:内核态指的是操作系统的内核。此模式下,CPU可以访问内存所有数据, 包括外围设备。某些指令只能在此状态下运行,包括读取或改变诸如程序状态字之类控制寄存器的指令、原始I/O指令和与内存管理相关的指令,还有部分内存区域仅在特权态下可以被访问到。

原因:他可以保护操作系统和重要的操作系统表(如进程控制块)不受用户程序的干涉。在内核态下,软件具有对处理器及所有指令、寄存器和内存的控制能力,这一级的控制对用户程序不是必须的,并且为了安全起见也不是用户程序可以访问的

What is deadlock? How to prevent deadlock?

什么是死锁?如何避免死锁?

答案:死锁是一组相互竞争系统资源或进行通信的进程间的“永久”阻塞。当一组进程中的每个进程都在等待某个事件(典型的情况是等待所有请求的资源被释放),而只有在这组进程中的其他被阻塞的进程才可以触发该事件,这是就成这组进程发生了死锁

如何避免:①为预防占有且等待的条件,可以要求进程一次性地要求所有需要的资源,并且阻塞这个进程直到所有请求都同时满足。②为预防不可抢占这个条件,有几种方法,首先如果占有某些资源的一个进程进一步申请资源时被拒绝,则该进程必须释放它最初占有的资源,如果有必要,可再次申请这些资源和另外的资源。另一个方法是,如果一个进程请求当前被另一个进程占有的一个资源,则操作系统可以抢占另一个进程,要求他释放资源。③循环等待条件可以通过定义资源类型的线性顺

序来预防。如果一个进程已经分配到了R类型的资源,那么接下来请求的资源只能是那些排在R类型之后的资源类型

Please describe the implementation methods of Segment-page

描述段页式的实现方法

答案:基本原理:用分段方法来分配和管理虚拟存储器。程序的地址空间按逻辑单位分成基本的段,而每一段有自己的段名,再把每段分成固定大小的若干页。用分页方法来分配和管理实存。即把整个主存分成与上述页大小相等的存储块,可装入作业的任何一页。程序对内存的调入或调出是按页进行的。但它又可按段实现共享和保护。逻辑地址结构。一个逻辑地址用三个参数表示:段号S;页号P;页内地址d。段表、页表、段表地址寄存器。为了进行地址转换,系统为每个作业建立一个段表,并且要为该作业段表中的每一个段建立一个页表。系统中有一个段表地址寄存器来指出作业的段表起始地址和段表长度。

What is the difference between HRRN and FCFS? How HRRN avoids the disadvantages of FCFS.

最高响应比优先与先到先服务的区别是什么?最高响应比优先如何避免先到先服务的不足?

答案:FCFS是最简单的调度算法,按先后顺序进行调度。

HRRN调度策略同时考虑每个作业的等待时间长短和估计需要的执行时间长短,从中选出响应比最高的作业投入执行。

响应比R定义如下: R =(W+T)/T = 1+W/T

其中T为该作业估计需要的执行时间,W为作业在后备状态队列中的等待时间。每当要进行作业调度时,系统计算每个作业的响应比,选择其中R最大者投入执行。

What is the difference among deadlock avoidance, detection, and prevention?

死锁避免,检测和预防之间的区别是什么?

死锁预防是通过间接地三种死锁必要条件的至少一个或是直接地循环等待的发生来避免死锁的出现。死锁避免允许可能出现的必要条件发生,但是采取措施确保不会出现死锁的情况。而死锁检测允许资源的自由分配,采取周期性的措施来发现并处理可能存在的死锁情况。

1.What are three objectives of an OS design?

方便:操作系统使计算机更易于使用。

有效:操作系统允许以更有效的方式使用计算机系统资源。

扩展的能力:在构造操作系统时,应该允许在不妨碍服务的前提下有效地开发、测试和引进新的系统功能。

2. What is a process?

进程是一个正在执行的程序,它被操作系统控制和选择。

3. Explain the distinction between a real address and a virtual address。

虚地址指的是存在于虚拟内存中的地址,它有时候在磁盘中有时候在主存中。

实地址指的是主存中的地址。

4.What is multithreading?

多线程技术是指把执行一个应用程序的进程划分成可以同时运行的多个线程。

5.What is swapping and what is its purpose?

交换是指把主存中某个进程的一部分或者全部内容转移到磁盘。当主存中没有处于就绪态的进程时,操作系统就把一个阻塞的进程换出到磁盘中的挂起队列,从而使另一个进程可以进入主存执行。

6.List three general categories of information in a process control block。

进程标识,处理器状态信息,进程控制信息。

7.List reasons why a mode switch between threads may be cheaper than a mode switch between processes。

包含的状态信息更少。

8. What resources are typically shared by all of the of the threads of a process?

例如地址空间,文件资源,执行特权等。

9. List three degrees of awareness between processes and briefy define each。

进程间互相不知道对方:这是一些的进程,他们不会一起工作。

进程间间接知道对方:这些进程并不需要知道对方的进程ID号,但他们共享访问某些对象,如一个I/O缓冲区。

进程间直接知道对方:这些进程可以通过进程ID号互相通信,用于合作完成某些活动。

10.List the requirements for mutual exclusion。

1).必须强制实施互斥:在具有关于相同资源或共享对象的临界区的所有进程中,一次只允许一个进程进入临界区。

2).一个在临界区停止的进程必须不干涉其他进程。

3.)绝不允许出现一个需要访问临界区的进程被无限延迟的情况,即不会饿死或饥饿。

4).当没有进程在临界区中时,任何需要进入临界区的进程必须能够立即进入。

5.)对相关进程的速度和处理器的数目没有任何要求和。

6).一个进程驻留在临界区中的时间是有限的。

11 .What is a monitor?

管程是由一个或多个过程,一个初始化序列和局部数据组成的软件模块。

12.What are the four conditions that create deadlock?

互斥,占有且等待,不可抢占,循环等待。

13. How can the circular wait condition be prevented?

可以通过定义资源类型的线性顺序来预防。如果一个进程已经分配到了R类型的资源,那么它接下来请求的资源只能是那些排在R类型之后的资源类型。

14. What requirements is memory management intended to satisfy?

重定位、保护、共享、逻辑组织和物理组织。

15. What is the difference between internal and external frag mentation?

内部碎片是指由于被装入的数据块小于分区大小而导致的分区内部所浪费的空间。外部碎片是与动态分区相关的一种现象,它是指在所有分区外的存储空间会变成越来越多的碎片的。

16. What are the distinctions among logical, relative,and physical addresses?

逻辑地址是指与当前数据在内存中的物理分配地址无关的访问地址,在执行对内存的访问之前必须把它转化成物理地址。相对地址是逻辑地址的一个特例,是相对于某些已知点(通常是程序的开始处)的存储单元。物理地址或绝对地址是数据在主存中的实际位置。

17. What is the difference between simple paging and virtual memory paging?

简单分页:一个程序中的所有的页都必须在主存储器中程序才能正常运行,除非使用覆盖技术。 拟内存分页:不是程序的每一页都必须在主存储器的帧中来使程序运行,页在需要的时候进行读取。

18.Explain thrashing。

虚拟内存结构的震动现象,在这个过程中处理器大部分的时间都用于交换块,而不是执行指令。

19. Briefly define the alternative page fetch policies。

在请求式分页中,只有当访问到某页中的一个单元时才将该页取入主存。

在预约式分页中,读取的并不是页错误请求的页。

20. What is accomplished by page buffering?

(1)被替换出驻留集的页不久又被访问到时,仍在主存中,减少了一次磁盘读写。

(2)被修改的页以簇的方式被写回,而不是一次只写一个,这就大大减少了I/O操作的数目,从而减少了磁盘访问的时间。

21.What is the difference between demand cleaning and precleaning?

在请求式清除中,只有当一页被选择用于替换时才被写回辅存;

在预约式清除中,将这些被修改的多个页在需要用到它们所占据的页帧之前成批的写回辅存。

22. Briefly describe the three types of processor scheduling。

长程调度:决定加入到待执行的进程池中;

中程调度:决定加入到部分或全部在主存中的进程集合中;

短程调度:决定哪一个可用进程将被处理器执行。

23. What is the difference between preemptive and nonpreemptive scheduling?

非抢占:在这种情况下,一旦进程处于运行态,他就不断执行直到终止,或者为等待I/O或请求某些操作系统服务而阻塞自己。

抢占:当前正在运行的进程可能被操作系统中断,并转移到就绪态。关于抢占的决策可能是在一个新进程到达时,或者在一个中断发生后把一个被阻塞的进程置为就绪态时,或者基于周期性的时间中断。

24. List and briefly define three techniques for performing I/O。

可编程I/O:处理器代表进程给I/O模块发送给一个I/O命令,该进程进入忙等待,等待操作的完成,然后才可以继续执行。

中断驱动I/O:处理器代表进程向I/O模块发送一个I/O命令,然后继续执行后续指令,当I/O模块完成工作后,处理器被该模块中断。如果该进程不需要等待I/O完成,则后续指令可以仍是该进程中的指令,否则,该进程在这个中断上被挂起,处理器执行其他工作。

直接存储器访问(DMA):一个DMA模块控制主存和I/O模块之间的数据交换。为传送一块数据,处理器给DMA模块发送请求,只有当整个数据块传送完成后,处理器才被中断。

25. What is the difference between logical I/O and device I/O?

逻辑I/O:逻辑I/O模块把设备当作一个逻辑资源来处理,它并不关心实际控制设备的细节。逻辑I/O模块代表用户进程管理的一般I/O功能,允许它们根据设备标识符以及诸如打开、关闭、读、写之类的简单命令与设备打交道。

设备I/O:请求的操作和数据(缓冲的数据、记录等)被转换成适当的I/O指令序列、通道命令和控制器命令。可以使用缓冲技术,以提高使用率。

26. What is the difference between block-oriented devices and stream-oriented devices?

面向块的设备将信息保存在块中,块的大小通常是固定的,传输过程中一次传送一块。通常可以通过块号访问数据。磁盘和磁带都是面向块的设备。

面向流的设备以字节流的方式输入输出数据,其末使用块结构。终端、打印机通信端口、鼠标和其他指示设备以及大多数非辅存的其他设备,都属于面向流的设备。

27. Why would you expect improved performance using a double buffer rather than a single buffer for I/O?

双缓冲允许两个操作并行处理,而不是依次处理。典型的,在一个进程往一个缓冲区中传送数据(从这个缓冲区中取数据)的同时,操作系统正在清空(或者填充)另一个缓冲区。

28. What delay elements are involved in a disk read or write?

寻道时间,旋转延迟,传送时间

29. What is a file management system?

文件管理系统是一组系统软件,为使用文件的用户和应用程序提供服务。

30. List and briefly define five file organizations。

堆是最简单的文件组织形式。数据按它们到达的顺序被采集,每个记录由一串数据组成。

顺序文件是最常用的文件组织形式。在这类文件中,每个记录都使用一种固定的格式。所有记录都具有相同的长度,并且由相同数目、长度固定的域按特定的顺序组成。由于每个域的长度和位置已知,因此只需要保存各个域的值,每个域的域名和长度是该文件结构的属性。

索引顺序文件保留了顺序文件的关键特征:记录按照关键域的顺序组织起来。但它还增加了两个特征:用于支持随机访问的文件索引和溢出文件。索引提供了快速接近目标记录的查找能力。溢出文件类似于顺序文件中使用的日志文件,但是溢出文件中的记录可以根据它前面记录的指针进行定位。

索引文件:只能通过索引来访问记录。其结果是对记录的放置位置不再有,只要至少有一个索引的指针指向这条记录即可。此外,还可以使用长度可变的记录。

直接文件或散列文件:直接文件使用基于关键字的散列。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- dcrkj.com 版权所有 赣ICP备2024042791号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务