计算机四级必背-操作系统

一、基础

1.批处理操作系统的缺点:缺少交互性(批阅奏折,不用上朝交互).

对于运行批处理作业的大型计算中心,其调度算法的设计目标是(ABC)。

A)较大的吞吐量

B)较短的周转时间

C)较高的 CPU 利用率

D)较快的响应时间

E)较均衡的性能

对于实时系统,其调度算法的设计目标是()。

A)较大的吞吐量

B)较短的周转时间

C)较高的 CPU 利用率

D)满足截止时间要求

E)满足可靠性要求

对于交互式系统,其调度算法的设计目标是()。

A)较大的吞吐量

B)较短的周转时间

C)较高的 CPU 利用率

D)较快的响应时间

E)较均衡的性能

操作系统名称:Ubuntu、Windows、UNIX、Linux、BSD、DOS

2.现代操作系统最基本的特征:并发性,共享虚拟异步

3.从计算机应用角度来看,操作系统的主要作用:人机交互接口(接口包含图标和菜单( 图形界面接口)、命令行、系统调用( 程序接口)

 从软件设计和开发角度来看,操作系统的主要作用:软件开发基础平台

从计算机安全保护角度来看,操作系统的主要作用:第一道安全防线   皮肤

计算机系统发展角度来看,操作系统的主要作用:虚拟机和扩展机

4.构造操作系统的方法:模块化,分层式,微内核(客户机/服务器结构  c/s),整体结构

5.组成操作系统的主要部分通常是进程线程管理、内存管理、设备管理和文件管理

6.并发性和 CPU 系统交替挂钩

7.共享性:不可以同时共享:内存分配模块

可以同时共享:可重入代码、SPOOLing 系统、log()函数子程序、硬盘

可以共享可以被抢占使用:中央处理单元

可以共享但是不能被抢占使用(互斥共享):存储器和打印机

8.在用户态下使用特权指令而引起的中断:访管中断

用户进程从用户态转变为内核态时,使用的指令:访管指令

只能在操作系统内核态下运行:中断的一些指令

用户态下执行:程序相关指令

既可以在内核态下运行又可以在用户态下运行的指令:置移位方向标志

9.用户编程需要打印输出,他可使用下列操作系统提供的哪一种系统调用write(),不是printf()

10.线程拥有的必不可少的资源:线程相关的各种栈  计数器+寄存器+栈

11.异常:0除,程序,指令,算术,内存,虚存系统的缺页,存储异常

中断:设备相关

12.程序相关操作一般不属于系统调用(提供给用户用于应用程序编程的唯一接口),文件操作、进程控制、通信和内存管理,设备I/O需要系统调用

13.过程调用 调用被调 都是  用户态,

系统调用,调用用户,被调核心态

系统调用与一般过程调用是不同的,下列对它们的调用程序和被调用程序的描述中,哪

一个是正确的(D)。

过程调用 被调 都是  用户态,

系统调用,调用用户,被调核心。

A)过程调用和系统调用的调用程序和被调用程序均位于核心态

B)过程调用和系统调用的调用程序和被调用程序均位于用户态

C)过程调用时调用程序位于用户态,被调用程序位于核心态

D)系统调用时调用程序位于用户态,被调用程序位于核心态

系统调用时需要通过陷入机制,从用户态的调用程序转到核心态的被调用程序

过程调用和系统调用均可以嵌套使用

过程调用直接返回到调用程序,系统调用在返回到调用程序前先运行调度程序

14.相比单道程序运行,并发运行的多道程序不再具有下列哪个特性:可再现性

15.在 UNIX 系统中,若文件 File4 的权限是 736,则表示

每个权限用一个数字表示:读(r)=4,写(w)=2,执行(x)=1。因此,一个八进制数可以用来表示文件的权限。

根据,我们可以看到736这个权限表示的含义:

  • 第一位是7,表示文件所有者有读、写和执行权限,即7=4+2+1。
  • 第二位是3,表示用户组有读和执行权限,即3=2+1。
  • 第三位是6,表示其他用户有读和写权限,即6=4+2。

16.操作系统的特点

 批处理操作系统的特点是()。

A)成批处理用户提交的作业

B)用户无法干预作业的运行

C)系统资源利用率较高

分时操作系统的特点是()。

A)多个用户在线同时使用计算机

B)便于调试程序

C)能够对用户输入的信息及时响应

 分布式操作系统的特点是()。

A)系统内所有主机使用同一个操作系统

B)系统内资源深度共享

C)用户无需了解系统内本地主机或异地主机的差异,具有透明性

D)系统内各主机处于同等地位,不分主次

E)系统具有较高的可靠性

实时操作系统的特点是()

A)具有较高的可靠性

B)在严格的时间范围内,实时响应用户的请求

C)具有较好的过载防护能力

速度和 成本 都不选,

系统资源利用率较高 是批处理操作系统的特点,

系统具有较高的可靠性是分布式操作系统的特点 ,同时也是 实时操作系统的特点。

17.出现进程、锁等关键词的一般属于处理器管理。出现地址、内存等关键词的一般属于存储管理; 检查进程地址空间是否出现地址越界问题属于存储管理 ; 将磁盘上的代码调入内存属于存储管理。出现文件、磁盘等关键词的一般属于文件管理; 管理磁盘空间属于文件管理。总结:存储管理是和地址内存相关,文件管理是和磁盘文件相关

二、进程、线程

1.下列进程控制块PCB的组织方式:线性方法、索引方法、链接方法

进程控制块(PCB)的内容一般可以分成调度信息和现场信息两大部分,属于现场信息3种:程序状态字,时钟信息,界地址寄存器。程十界 背

进程的“动态性”:进程动态产生、动态变化、动态消亡

并发性:宏观上,不同的进程可以一起向前推进

独立性:一个进程是一个相对完整的资源分配单位

异步性:每个进程按照各自独立的、不可预知的速度向前推进

静态的角度看,进程是由程序、数据和进程控制块(PCB)三部分组成。

保存在进程控制块结构:进程标识符、进程当前状态、代码段指针

2.Linux 进程支持的状态:睡眠+中断+僵尸+运行

3.就绪状态的进程最多是总进程数-1

阻塞状态的进程最多就是总进程数

某4 核处理器的计算机系统中共有50个进程,那么,处于就绪状态的进程最多有几个(C)。

A)4   B)46   C)49   D)0

某单核处理机的计算机系统中共有20个进程,那么,处于就绪状态的进程最少是几个(D)。

A)1  B)20  C)19   D)0

4.创建一个进程,改变进程状态都需要调用进程控制原语实现

5.进程的状态变化必然引起另一个进程的状态发生变化的cpu运行位变化

系统中有多个进程分别处于就绪状态、运行状态和阻塞状态,下列哪一个进程的状态变化必然引起另一个进程的状态发生变化(A)。

A)运行状态→阻塞状态  cpu运行位变化

B)阻塞状态→就绪状态

C)阻塞状态→挂起状态

D)就绪状态→运行状态

6.使用进程创建原语创建进程:申请 PCB,填写 PCB,放入就绪队列

使用进程撤销原语撤销进程:找到对应进程的 PCB,撤销其下的子孙进程,释放该进程资源,撤销该 PCB

使用进程唤醒原语唤醒进程:在等待队列中找到该进程 PCB,修改 PCB 中进程状态为就绪,将其插入到就绪队列

使用进程阻塞原语阻塞进程:中断 CPU 执行,保存现场信息,修改 PCB 中进程状态为阻塞,将其插入到阻塞队列

7.进程控制原语:进程优先级改变、进程挂起、进程唤醒 、激活,阻塞

8.pthread_join:等待一个特定的线程退出

pthread_exit()结束,或者叫主动退出

pthread_yield:线程让出 CPU,或叫主动释放

pthread_create()创建线程,如果在main下面有pthread_create,就最多存在2个线程

pthread_mutex_init()创建一个互斥量

9.请分析以下程序。

int main()

{

pid_t pid;

pid = fork();#生成两个进程

if(pid==0)

printf("I am the child process, my process ID is%d\n",getpid());

else

printf("I am the parent process, my process ID is%d\n",getpid());}

那么,该程序正确运行后的结果是(A)。儿子必须在父亲前面

A)I am the child process, my process ID is 3744

I am the parent process, my process ID is 3987

B)I am the child process, my process ID is 3744

C)I am the parent process, my process ID is 3987

D)不输出任何信息

10.不能引起新进程调度的事件或操作:选就绪态有关

11.下列进程关系中,不能用 P、V 操作来实现的是(A)。

A)进程共享

B)进程同步

C)进程互斥

D)进程的前趋关系

12.在采用 P、V 操作对共享资源的使用进行保护时,对该共享资源读写的代码段称为临界区

进程访问临界区时要遵循相关准则:空闲则进、忙则等待、让权等待、有限等待(不是无限等待

民航网络订票系统中,作为临界资源的对象是飞机票  目标

临界资源的访问步骤:进入(P原语)--临界----退出(V原语,离开) ---剩余

int booking(id)//订票例程

{

int c;

{

int c;

while TS(&lock); //Test-and-Set 指令         进入

c=fetch(ticket); //从服务器取剩余票额

show(c); //显示

if (read(input)=1)//是否订票?

{

c=c-1; //票额减 1

send(c); //送回新数据

}                                           临界区

lock = FALSE; //置标志为 F                  退出区

output(list); //打印机票                    剩余区

用 P、V 操作管理临界区时,把信号量 mutex 的初值设定为 1。当有 k(k>1)个进程在mutex 的等待队列中时,信号量的值为-k,表示有k个值在等待,信号量的值表示了有多少进程正在等待这个资源

P减1,V加1     P相关语句顺序不能动

在有 N 个缓冲区的生产者消费者的问题中,下列叙述中哪些是错误的()。

producer()

{ int item;

while(TRUE){

item = produce_item();

P(empty);

P(mutex);

insert_item(item);

V(mutex)

V(full);

}

}

consumer()

{ int item;

while(TRUE){

P(full);

P(mutex);

item = remove_item();

V(empty);

V(mutex);

consume_item(item);

}

}

A)信号量 empty 的初值为 N

B)信号量 full 的初值为 0

C)信号量 mutex 的初值为 0    为1

D)P(full)和 P(mutex)两条语句可以颠倒顺序   不能

E)V(empty)和 V(mutex)两条语句可以颠倒顺序

关于读者写者问题,下列叙述中哪些是错误的()。

reader()

{

while (TRUE){

P(mutex);

rc = rc + 1;

if (rc = = 1)P (w);

V(mutex); ①

读操作;

P(mutex); ②

rc = rc - 1;

if (rc = = 0)V(w);

V(mutex);

其他操作;

}

}

writer()

{

while (TRUE){

……

P(w);

写操作;

V(w);

}

}

A)信号量 w 的初值是 0   是1

B)信号量 mutex 的初值是 1

C)计

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值