华为内部面试题库---(5)
摘自:https://www.cnblogs.com/hehehaha/archive/2013/05/20/6332765.html
1、分时操作系统与实时操作系统最本质的区别是:
A 处理逻辑的正确性
B 得出结果的时间的确定性
C 关注系统吞吐率,平均响应时间
D 其他
答案:B
试题解析:出处:http://www.360doc.com/content/11/0321/16/507289_103227092.shtml
分时操作系统:同时允许多个用户通过终端,以交互方式使用计算机,共享主机资源,时间片轮询为多个用户访问服务,关注系统的总体吞吐率和平均响应时间。
实时操作系统:外部事件产生时,能够快速响应,控制实时任务协调一致运行的操作系统,根据时间约束的严格性,分为软实时操作系统和硬实时操作系统。
2.软实时操作系统与硬实时操作系统的区别是:
A 用户交互性
B 操作独立性
C 执行任务的期限,不允许时延
D 其他
答案:C
试题解析:出处: http://www.ibm.com/developerworks/cn/linux/l-lrt/part1/
软实时操作系统:系统负荷较重时,允许发生时延的情况,但同时不会对系统造成较大的危害,系统不会整体崩溃。
应用场景:视频点播系统,电话会议系统
硬实时操作系统:必须在指定的期限内完成实时任务,不允许时延,如果发生时延会造成灾难性的后果。
应用场景:卫星控制系统,机床控制系统
3.影响实时操作系统的硬件因素是:
A cache line miss
B TLB miss
C 缺页异常
D 关中断延时与关抢占延时
答案:ABC
试题解析:出处: http://www.ibm.com/developerworks/cn/linux/l-lrt/part1/
cache miss
CPU 内置cache访问miss,导致实时程序执行时间较大
Page cache(内存缓存从硬盘读取的数据)访问miss,导致实时程序访问时间较长
Buffer cache (内存缓存即将写入硬盘的数据)访问miss,避免重复写入硬盘数据,导致实时程序频繁访I/O
TLB miss
CPU访问数据,TLB直接从快表得到物理地址,TLB miss导致CPU访问两次内存导致时延(页表)
缺页异常
CPU通过页表寻找物理地址,如果页表不在物理内存中,导致缺页中断,影响实时程序访问时间
关中断延时与关抢占延时是系统软件kernel方面在中断和调度方面对实时性的影响
4.CPU接收同步中断,下面不是的:
A 故障
B 陷阱
C 终止
D I/0中断
答案:D
试题解析:出处: linux内核设计与实现 第六章
处理器对中断的处理,主要分为同步和异步。
同步主要是指处理器执行相关指令的同时产生,称为异常,其分为故障、陷阱、中止
1)故障:程序正常工作下,出现软件执行过程中的异常,进入异常处理程序后在不失连贯性的情况下重新开始,纠正后返回到引起故障的原来地址,CS、EIP保存了引起故障的入口地址和偏移量。
实例:缺页异常处理函数
2)陷阱:同步异常,是执行一条指令的结果。是在用户程序和内核之间提供系统调用接口,陷阱返回当前指令的下一条指令。
实例:单步调试程序
3)中止:由不可恢复的未知错误造成的结果,CS、EIP不能正常保留异常指令发生的地址。
实例:处理程序返回到内核中的abort例程
异步主要是来自外部硬件产生的中断和软件产生的中断。
5.标准Linux内核对中断处理流程不正确的是:
A 处理器只接受外部中断信号,首先CPU执行完当前指令
B 保留CPU其状态信息,进行压栈操作
C 内核转向中断处理,执行相关中断处理程序
D 中断处理执行完后,进行出栈操作,返回被打断程序继续执行