程序员操作系统笔试题

时间:2018-12-31 12:00:00 资料大全 我要投稿

程序员操作系统笔试题

   1.基本知识点:

程序员操作系统笔试题

  1) 操作系统是控制和管理计算机软硬件资源,以尽量合理有效的方法组织多个用户共享多种资源的程序集合,

程序员操作系统笔试题

  2) 操作系统的基本功能:(1)处理机管理。主要功能包括进程控制、进程调度、进程同步和进程通信。(2)存储器管理。主要功能包括内存分配、地址映射、内存保护和内存扩充。(3)设备管,也叫I/O管理。主要功能包括缓冲区管理、设备分配、设备驱动和设备的无关性处理。(4)文件管理。主要功能包括文件存储空间的管理、文件操作的一般管理、目录管理、文件的读写管理和存取控制。(5)用户界面管理。操作系统的用户界面就是操作系统与用户的接口,包括控制接口和程序接口。

  3) 现代操作系统的基本特征:并发性、共享性、虚拟性、异步性和不确定性。

  4) 所谓中断是指系统发生某一事件后,CPU暂停正在执行的程序去执行处理该事件的程序过程,处理中断事件的程序称为中断处理程序,产生中断信号的那个部件称为中断源。中断处理具体过程:保存现场;分析原因,转中断处理程序;恢复现场。

  5) 进程是一个具有独立功能的程序关于数据集合的一次可以并发执行的运行活动,其基本特征:动态特征、并发特征、独立性、相互制约性。进程的构成:程序、数据和进程控制块。进程有三种基本的调度状态:执行状态、就绪状态和等待状态。

  6) 进程的'引入大大地提高了资源的利用率和系统的吞吐量,而引入线程的目的是为了减少程序并发所付出的系统开销。进程是资源分配的单位,而线程是系统调度的单位。

  7) 所谓死锁是多个进程间的一种僵持状态。进程死锁的原因:资源竞争及进程推进顺序非法。死锁的4个必要条件:互斥、占有等待、不可剥夺、环路。死锁的处理:鸵鸟策略、预防策略、避免策略、检测与解除死锁。

  8) 临界资源是一次只允许一个进程使用的资源。临界区是在进程中操作临界资源的程序段。

  2.进程和线程的区别?

  答:线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别:(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位。(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行。(3)拥有资源:进程是拥有资源的一个独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源. (4)系统开销:在创建或撤消进程时,由于系统都要为之分配和回收资源,导致系统的开销明显大于创建或撤消线程时的开销。

  3.网络编程中设计并发服务器,使用多进程 与 多线程 ,请问有什么区别?

  解析:(1)进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品

  (2)线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。

  两者都可以提高程序的并发度,提高程序运行效率和响应时间,

资料共享平台

程序员操作系统笔试题》(http://meiwen.anslib.com)。线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源管理和保护;而进程正相反。同时,线程适合于在SMP机器上运行,而进程则可以跨机器迁移。

  答:用多进程时每个进程有自己的地址空间,线程则共享地址空间。所有其他区别都是由此而来的:(1)速度:线程产生的速度快,线程间的通信快,切换快等,因为它们在同一个地址空间内。(2)资源利用率:线程的资源利用率比较好也是因为它们在同一个地址空间内。(3)同步问题:线程使用公共变量/内存时需要使用同步机制,还是因为它们在同一个地址空间内。

  4. 操作系统中常见的进程调度策略有哪几种?

  答:FCFS(先来先服务),优先级,时间片轮转,多队列、多级反馈队列。

  5.进程间的通信如何实现?

  答:现在最常见的进程间通信的方式有:信号,信号量,消息队列,共享内存,管道。信号是使用信号处理器来进行的,信号量是使用P、V操作来实现的。消息队列是比较高级的一种进程间通信方法,因为它真的可以在进程间传送消息。

  6.在Windows编程中互斥器(mutex)的作用和临界区(critical section)类似,请说一下二者间的主要区别。

  答:两者的区别是mutex开业用于进程之间互斥,critical section是线程之间的互斥。

  7.进程进入等待状态有哪几种方式?

  答:CPU调度给优先级更高的Thread(线程),原先Thread 进入Waiting(等待)状态。阻塞的Thread获得资源或者信号,进入Waiting状态。在时间片轮转的情况下,如果时间片到了,也将进入等待状态。

  8.试说明进程在三个基本状态之间转换的典型原因。

  答:a.处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变为执行状态。b.当前进程因发生某事件而无法执行,如访问已被占有的临界资源,就会使进程由执行状态变为阻塞状态。c.当前进程因事件片用完而被暂停执行,该进程便由执行状态变为就绪状态。

  9.同步机构应遵循哪些基本准则?

  答:a.空闲让进;b.忙则等待;c.有限等待;d.让权等待。

  10.在单处理机环境下,进程间有哪几种通信方式?

  答:a.共享存储器系统通信方式;b.消息传递系统通信方式;c.管道通信方式。

  11.试比较消息队列与管道通信机制。

  答:a.所谓管道,是指用于连接一个读进程和一个写进程,以实现它们之间通信的共享文件,又称pipe文件,管道通信是属于共享存储系统的。b.消息队列通信机制属于消息传递系统通信机制,存在通信链路,有消息的格式,有若干缓冲队列,采用独特的发送原语和接受原语。

  12.在请求分页系统中,常采用哪几种页面置换算法?

  答:a.最佳置换算法;b.先进先出算法;c.最近最久未使用LRU置换算法;d.Clock置换算法;e.此外,还有最少使用置换算法和页面缓冲算法。

【程序员操作系统笔试题】相关文章:

1.Unix操作系统笔试题

2.C/C++程序员必备资料 常见笔面试题深入解析

3.360笔试题目

4.360笔试题目

5.PHP程序员笔试题

6.Delphi程序员笔试题

7.操作系统基本概念笔试题

8.笔美国国家仪器试题目