zoukankan      html  css  js  c++  java
  • 华为内部面试题库(5)

    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   中断处理执行完后,进行出栈操作,返回被打断程序继续执行

    答案:A
    试题解析:出处:  linux内核设计与实现  第六章

       标准Linux内核不光只是相应外部硬件中断,同时可以响应内部异常。在中断不允许抢占状态下,内核响应外部硬件中断的流程主要如下;  
        1) 外部硬件设备通过向中断控制器(IOAPIC/PIC)的中断输入引脚请求中断,中断控制器接收到中断后,向处理器芯片上(INTR、NMI)两个中断引脚输入中断请求;

        2)  INTR引脚接收外部硬件I/O中断请求,从系统总线上读取中断控制器提供的中断向量号,INTR引脚接收外部硬件的可屏蔽中断;
        3)处理器响应其中断处理之前,先保留其CPU状态信息,进行相关压栈操作;
        4)CPU通过其IDTR找到中断向量表在内存中地址,找到中断向量对应的中断处理函数的入口地址;
        5)找到中断处理函数(即相应硬件设备的中断处理函数),开始执行;
        6)执行完后,进行出栈操作,返回被打断程序继续执行。

  • 相关阅读:
    ES6 学习笔记(整理一遍阮一峰大神得入门文档,纯自己理解使用)
    怪异模式和标准模式
    计算机网络七层协议模型 “开放系统互联参考模型”,即著名的OSI/RM模型(Open System Interconnection/Reference Model)
    流行得前端构建工具比较,以及gulp配置
    谈谈刚接触sea.js框架得看法
    MAC终端安装grunt--javascript世界得构建工具
    js的数组与对象关系
    JavaScript中的setInterval用法
    每周一题:平方数之和((更新JS)
    每周一题:拿硬币(更新JS)
  • 原文地址:https://www.cnblogs.com/hehehaha/p/6332765.html
Copyright © 2011-2022 走看看