操作系统 - Windows

Windows Operating System

C14 Win2000/XP 模型

  1. Windows 采用什么样的体系结构?

在这里插入图片描述

  • 融合了分层和客户/服务器系统模型。
  1. 硬件抽象层HAL的作用是什么?
  • 本质: 一个可加载的核心态模块(HAL.dll)
  • 直接操纵硬件
  • 作用: 向内核, 设备驱动隐藏和硬件有关的细节,使得内核, 设备驱动程序和执行体免受特殊硬件平台差异的影响, 系统可移植性好.
  1. Windows 系统组件的基本机制。
  • 陷阱调度(Dispatching),包括中断、延迟过程调用、异步过程调用、异常调度和系统服务调度

    • 属于内核的功能

    • 是处理意外事件的硬件机制

    • 陷阱处理程序接收中断和异常检测类型并将控制转交给相应处理程序

    • 中断是异步事件;异常是同步事件,系统服务调用被视为异常。

    在这里插入图片描述

  • 对象管理器

    • 管理操作系统内的所有对象:
    • 它将系统公共的资源作为对 象来对待,以控制进程使用对象
      • 执行体对象、内核对象
        • 执行体对象是对执行体内各种组件实现的对象
        • 内核对象是内核实现的初级对象(核心态可见, 用户态不可见)
        • 执行体对象包含一个或多个内核对象
    • 跟踪所有对象, 便于对象访问的安全检测。
  • 对象之间的同步,包括自旋锁、内核调度程序对象等

    • 内核同步
      • 定义: 互斥访问内核的临界区
      • 内核引入**自旋锁(Spin lock)**实现多处理机互斥机制
        • 拥有自旋锁不会被剥夺处理机
    • 执行体同步
      • 内核以内核对象的形式给执行体提供其他的同步机构,称为**“调度程序对象”**
        • 有信号, 无信号两种状态
  • 本地过程调用LPC

  1. 理解:延迟过程调用 DPC,异步过程调用 APC
  • 延迟过程调用 DPC:
    • 内核在进行系统嵌套调用时,检测到应该进行重调度
      • 为了保证调度的正确性, 内核用DPC来延迟请求调度的产生。
    • 中断服务例程可以把一些相对不紧急得事情放到一个DPC对象中,从而缩短处在高IRQL(中断优先级)的时间
      • IRQLDPC/Sidpatcher以下时产生DPC中断
      • 依次执行DPC 队列长得每个历程,直到DPC 队列为空
    • DPC队列是系统范围的
  • 异步过程调用APC:
    • 为用户程序和系统代码提供了一种在特定用户线程环境中执行代码的方法。
    • 每个线程都有自己的APC队列
    • APC队列也由内核管理
  1. Windows 中有哪些对象,都有什么作用?
  • 执行体对象、内核对象

    • 执行体对象是对执行体内各种组件实现的对象

      • 进程和线程管理器、内存 管理器、I/O管理器、对象管理器等。
    • 内核对象是内核实现的初级对象集合 (核心态可见, 用户态不可见, 仅供执行体使用)

  • 执行体对象包含一个或多个内核对象

  1. 在多处理机系统中,提供了哪些同步和互斥机制?
  • 内核同步

    • 定义: 互斥访问内核的临界区
    • 内核引入**自旋锁(Spin lock)**实现多处理机互斥机制
      • 拥有自旋锁不会被剥夺处理机
  • 执行体同步

    • 内核以内核对象的形式给执行体提供其他的同步机构,称为"调度程序对象"

      • 有信号, 无信号两种状态
  1. 线程如何实现等待一个同步对象的操作?

对象管理器提供了两个系统服务程序, 使线程与调度程序对象同步:

WaitForSingleOb

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值