linux简述动态优先级多级反馈循环调度算法思想及优缺点,Linux试卷及答案(中南大学)...

《Linux试卷及答案(中南大学)》由会员分享,可在线阅读,更多相关《Linux试卷及答案(中南大学)(7页珍藏版)》请在人人文库网上搜索。

1、一. 单项选择题(本题30分,每小题1.5分)在每小题列出的四个选项中只有一个是符合题目要求的,错选或未选均无分。1下面哪个Linux命令可以一次显示一页内容______ A. pause B. cat C. more D. grep2怎样更改一个文件的权限设置______ A. attrib B. chmodC. change D. file3如何从当前系统中卸载一个已装载的文件系统______ A. umount B. dismountC. mount u D. 从 /etc/fstab 中删除这个文件系统项4在大多数Linux发行版本中,图形方式的运行级定义为______ A.1 B.2。

2、 C.3 D.55用命令ls -al显示出文件ff的描述如下所示,由此可知文件所有者所在组的权限是______-rwxrw-r- 1 root root 599 Cec 10 17:12 ffA. rwx B. rw-C. r- D.无法获知6内核不包括的子系统是_______A.进程管理系统 B. 内存管理系统 C. I/O管理系统 D. 硬件管理系统7下面哪一个是Linux缺省状态下使用的文件系统类型A .Ext2 B. NFS C. Msdos D. Vfat8Linux文件系统的文件都按其作用分门别类地放在相关的目录中,对于外部设备文件,一般应将其放在______目录中A. /dev 。

3、B. /etc C. /bin D. /lib9关闭linux系统可使用命令______A.Ctrl+Alt+Del B.Ctrl+ALT C.shutdown -h now D. reboot10用命令ls -al显示出文件ff的描述如下所示,由此可知文件ff的类型为_____-rwxr-xr 1 root root 599 Cec 10 17:12 ffA. 普通文件 B. 硬链接 C. 目录 D. 符号链接11删除文件命令为_____。A .mkdir B. rmdir C. mv D. rm12改变文件所有者的命令为______。A chmod B. touch C. chown D.。

4、 cat13在下列命令中,不能显示文本文件内容的命令是______。A.more B.less C.tail D. join14查看系统当前进程信息的命令是______A.ps B.df C.man D. ls15. 进程有三种基本状态,分别是_______。A. 准备态、执行态和退出态 B 精确态、模糊态和随机态C. 运行态、就绪态和等待态 D 手工态、自动态和自由态16. 从后台启动进程,应在命令的结尾加上符号_____。A. & B. C. # D. $17. 一个进程调用fork系统调用后,会有什么结果?A. 生成一个进程,从main()处开始执行。 B. 生成一个线程,从main()。

5、开始执行。C. 生成一个进程,从fork之后开始执行。 D. 生成一个线程,从fork之后开始执行。18. 一个文件名字为rr.Z,可以用来解压缩的命令是_____。A. tar B. gzip C. compress D. uncompress19. 文件权限读、写、执行的三种标志符号依次是_____。A. rwx B. xrw C. rdx D. srw20. UNIX操作系统属于( )类操作系统A单用户单任务 B单用户多任务 C. 多处理机 D. 多用户多任务二、填空题 (本题15分,每空1分)21在Linux系统中,以__文件_______方式访问设备 。22编写的Shell程序运行前。

6、必须赋予该脚本文件__执行______权限。23唯一标识每一个用户的是__用户名_____和__UID_____。24在Linux系统中,用来存放系统所需要的配置文件和子目录的目录是__/etc______。25在Linux系统中,用来存放用户信息的文件是__/etc/passwd______。26结束进程的命令是_kill______。27将前一个命令的标准输出作为后一个命令的标准输入,称之为_管道______。28管道通信包括_有名管道______和__无名管道_____两种。29信号量主要是用来解决不同进程间的__同步互斥_____问题。30进程接收到信号后可以忽略信号,但是__SIGK。

7、ILL_____和__SIGSTOP_____这两个信号不能被忽略。31安装Linux系统对硬盘分区时,必须有两种分区类型:__/_____和__swap_____。三、简答题(本题30分,每小题6分)32什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?33Linux的进程间通信机制有哪些?请分别简要说明。# 无名管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。# 有名管道 (named pipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。# 信号量( semop。

8、hore ) : 信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源。因此,主要作为进程间以及同一进程内不同线程之间的同步手段。# 消息队列( message queue ) : 消息队列是由消息的链表,存放在内核中并由消息队列标识符标识。消息队列克服了信号传递信息少、管道只能承载无格式字节流以及缓冲区大小受限等缺点。# 信号量 ( sinal ) : 信号是一种比较复杂的通信方式,用于通知接收进程某个事件已经发生。#共享存储器( shared memory):共享内存就是映射一段能被其他进程所访问的内存,这段共享内。

9、存由一个进程创建,但多个进程都可以访问。共享内存是最快的IPC方式,它是针对其他进程间通信方式运行效率低而专门设计的。它往往与其他通信机制,如信号量,配合使用,来实现进程间的同步和通信。# 套接字( socket ) : 套解口也是一种进程间通信机制,与其他通信机制不同的是,它可用于不同及其间的进程通信。34什么是动态优先级多级反馈循环进程调度算法?结合其计算公式简要说明其主要思想。35简要说明里linux环境下编译、运行C程序的基本工具和过程。工具:gcc、 make如果程序很小(源文件很少),可以直接用gcc编译如果程序较大(源文件比较多),则要先编写程序的Makefile文件,然后用ma。

10、ke编译36简要说明面向连接和无连接两种网间进程通信方式的主要区别。面向连接的协议,在正式收发数据前,双方必须建立可靠的连接。连接的建立要经过三次“握手”才能建立起来,一旦连接建立起来,通信就比较稳定。面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去。四、编程与应用题(本题25分)37阅读下面shell程序,请写出执行结果。(6分)echo -e Please enter the score:while read SCOREdocase $SCORE in?|1-5? ) echo Failed!echo Please enter the next score:;6?) ech。

11、o Passed!echo Please enter the next score:;7?) echo Medium!echo Please enter the next score:;8?) echo Good!echo Please enter the next score:;9?|100) echo Great!echo Please enter the next score:;*) exit;esac done其中输入的数据为62 Passed!Please enter the next score80 Good!5 Failed!100038用Shell编程,判断一个文件是不是字符设。

12、备文件,如果是将其拷贝到 /dev 目录下,否则提示“This file is not exit”的信息。(6分)#!/bin/bashfilename=testif -c $filename thencp $filename /develseecho This file is not exitfi39编写一段C语言程序使其完成:父进程创建两个子进程,父子进程都在屏幕上显示自己的进程ID号。要求先显示子进程的ID号,后显示父进程的ID号。(6分)#include #include #include #include #include int main()pid_t pid1, pid2;pid。

13、1 = fork();if(pid1 = 0)printf(子进程1:%dn, getpid();exit(0);elsewait(NULL);pid2 = fork();if(pid2 = 0)printf(子进程2:%dn, getpid();exit(0);elsewait(NULL);printf(父进程:%dn, getpid();return 0;40编写利用IPC实现进程通信的C程序。该程序主要模拟根据帐号查询余额的过程。包括三方面1):请求进程从标准输入读入帐号,并将该帐号通过消息队列发送给服务进程;2) 服务进程接收该帐号后,按照请求的先后顺序在标准输入上输入该帐户的姓名和余。

14、额,并将结果返回给请求进程;3)请求进程接收返回的信息,并将结果输出在标准输出上。服务进程先于请求进程启动,请求进程启动时要携带请求编号,可同时启动多个请求进程。(7分)/*请求方程序msgreq.c*/#include#include#include#includestatic struct msgbuf long mtype;char mtext256; sndbuf, rcvbuf, *msgp ;extern int errno;int main(int argc, char *argv)int rtrn, msqid ; char name10;double balance;if (。

15、argc != 2) fprintf(stderr, msgreq 01-99n); exit(-1);if ( (msqid = msgget(0x888, IPC_CREAT | 0660) = -1 )fprintf(stderr, msgget 888 failed !n);exit(-1);msgp = &sndbuf;sprintf(sndbuf.mtext, %2.2s, argv1);printf(输入4位帐号:);scanf(%s, &sndbuf.mtext2);sndbuf.mtext6 = 0;msgp-mtype = 666;rtrn = msgsnd(msqid, 。

16、msgp, strlen(sndbuf.mtext), 0);if (rtrn = -1)perror(msgsnd);exit(-1);msgp = &rcvbuf;fprintf(stderr, 等待后台数据处理进程的回答.);rtrn = msgrcv(msqid, msgp, 100, atoi(argv1), 0);if(rtrn = -1)perror(msgrcv);exit(-1);sscanf(rcvbuf.mtext, %|%lf, name, &balance);printf(n姓名=%sn, name);printf(余额=%lfn, balance);/*服务方程序m。

17、sgcenter.c*/static struct msgbuf1long mtype;char mtext100; sndbuf, rcvbuf , *msgp;extern int errno;int main()int rtrn, msgqid ;char strbuf100;if ( (msqid = msgget(0x888, IPC_CREAT | 0600) = -1 )fprintf(stderr, msgget 888 failed !n);exit(-1);while(1)msgp = &rcvbuf;fprintf(stderr, 等待前台进程的请求.);rtrn = m。

18、sgrcv(msqid, msgp, 100, 666 , MSG_NOERROR);if(rtrn = -1)perror(msgrcv);exit(-1);msgp = &sndbuf;sprintf(strbuf, %2.2s0, rcvbuf.mtext);msgp-mtype = atoi(strbuf);printf(n输入帐号=%4.4s的帐户姓名:, &rcvbuf.mtext2);scanf(%s, sndbuf.mtext);strcat(sndbuf.mtext, |);printf(输入该帐户余额:);scanf(%s, strbuf);strcat(sndbuf.mtext, strbuf);rtrn = msgsnd(msqid, msgp, strlen(sndbuf.mtext), 0);if (rtrn = -1)perror(msgsnd);exit(-1。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 多级反馈队列调度算法(Multi-level Feedback Queue Scheduling Algorithm,MFQS)是一种在操作系统中用来管理进程的调度算法。它的基本思想是将进程分成若干个优先级等级,并建立多个反馈队列来存储进程。每个反馈队列对应一个优先级等级,优先级较高的反馈队列会优先被调度。 在 MFQS 算法中,每个进程都有一个时间片,每个时间片结束后,调度程序会检查该进程是否已经完成,如果没有,就将该进程移动到下一个优先级等级的反馈队列中,并重新赋予新的时间片。如果进程在最低优先级反馈队列中已经用尽了所有的时间片,但仍然没有完成,那么系统会将其丢弃,并从就绪队列中选择下一个进程进行调度。 MFQS 算法的优点在于,能够提高系统的吞吐量,同时也能保证短作业公平的调度。但是,它的缺点在于,调度的复杂度比较高,可能会带来一些额外的开销。 ### 回答2: 多级反馈队列调度算法是一种将作业分为多个队列,并为每个队列设置不同的优先级调度算法。其基本算法思想如下: 1. 将作业按照不同的优先级划分为多个队列,每个队列表示一个优先级。通常情况下,拥有更高优先级的队列会有更短的时间片,即更高的时间片轮转速度。而拥有较低优先级的队列会有较长的时间片,即较低的时间片轮转速度。 2. 当调度器开始运行时,首先选择拥有最高优先级的队列中的作业执行。如果当前队列中的作业能在时间片耗尽之前完成,则它将会从队列中移除。如果某个作业在时间片耗尽之前没有完成,则会被调度器暂停,并被移到一个拥有较低优先级的队列中等待下一次调度。 3. 当一个队列中的作业被暂停之后,它会被放置在相对较低优先级的队列中继续等待调度。通过不断重复这个过程,每个作业将会不断降低优先级并在较低优先级的队列中等待调度。这个过程保证了长时间运行的作业无法长时间占用CPU,从而能够公平地分配CPU资源给其他等待调度的作业。 4. 当一个作业在一个较低优先级的队列中得到调度时,它的时间片轮转速度会较慢。这意味着它将有更多的时间完成,从而减少作业被频繁中断的可能性。这种设计可以提高短作业的响应时间,同时也保证了长时间运行的作业不会完全被忽视。 多级反馈队列调度算法通过动态调整作业的优先级和时间片长度,能够有效地平衡各个作业之间的响应时间和吞吐量,提高系统的性能和公平性。它是一种常用的调度算法,在实际操作系统中得到了广泛应用。 ### 回答3: 多级反馈队列调度算法是一种动态调度算法,它根据进程的优先级和历史运行情况进行调度。 其基本算法思想如下: 1. 将进程根据其优先级划分为多个队列,每个队列有一个固定的时间片。 2. 初始时,将所有进程加入第一个队列。 3. 调度程序选择第一个队列中的进程执行,并设置一个定时器,当时间片用完时,强制切换到下一个队列。 4. 如果进程在当前队列中耗尽了所有时间片,它将被放置到下一个队列的尾部。 5. 进程在较高级别队列中获得的时间片相对较短,而在较低级别队列中获得的时间片相对较长。 6. 如果一个进程在较高级别队列运行了一段时间,但仍然没有完成,它会被移到较低级别队列中,以便给其他进程更多的执行时间。 7. 这样,进程将根据其运行时间和优先级在不同的队列中进行多次调度,以达到公平和高效利用资源的目的。 多级反馈队列调度算法的优点在于能够根据进程的运行情况动态地调整优先级,以提高系统的响应速度和整体性能。同时,它也能够公平地分配CPU时间片,避免某些进程长时间占用资源,导致其他进程无法得到执行。然而,该算法可能存在进程饥饿的问题,即某些进程可能永远无法在低级队列中获得足够的执行时间。因此,在实际应用中,需要合理调整各级队列的时间片大小和进程的优先级,以平衡各个进程之间的执行机会。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值