html5线上运营网站,wordpress做招聘网站,网站建设销售提点20个点,网站制作主题思路x86构架及操作系统概述
x86内存构架 地址空间和地址 物理地址空间#xff1a;内存和其他硬件资源组合到一起#xff0c;分布在CPU的物理地址空间内#xff0c;CPU使用物理地址索引这些资源 线性地址空间#xff1a;一个平台只有一个物理地址空间#xff0c;但每个程序都…x86构架及操作系统概述
x86内存构架 地址空间和地址 物理地址空间内存和其他硬件资源组合到一起分布在CPU的物理地址空间内CPU使用物理地址索引这些资源 线性地址空间一个平台只有一个物理地址空间但每个程序都认为自己独享整个平台的硬件资源每个进程都有自己的私有线性地址空间 逻辑地址 物理地址是CPU提交导总线用于访问平台内存或硬件设备的最终地址 线性地址 又叫虚拟地址当分页机制开启时线性地址必须转换为物理地址才能访问平台内存或硬件设备 分页机制 分页机制是更加粒度化的内存管理机制典型页大小是4KB页。其核心思想是通过页表将线性地址转换为物理地址。 相关的寄存器CR0的PG置1开启分页机制、CR3存储页表基地址 页表 页目录项 包含页表的物理地址。CPU使用线性地址的22~31为索引页目录。每个页目录大小为4B 页表项 包含该线性地址对应的PFNphysical frame numberCPU使用线性地址的12 22位索引每项大小为4BPFN线性地址0~11位得到物理地址。
X86构建的基本运行环境 三种基本模式 实模式CPU上电首先进入的就是此模式无权限分级。 保护模式 操作系统运行时常用的模式有特权分级。 虚拟8086模式 基本寄存器 通用寄存器有8个32位通用寄存器 内存管理寄存器 包括端寄存器和描述符表寄存器 EFLAGS寄存器32位的用来保存程序运行中的一些标志信息如异常、开启终端与否 EIP寄存器 32位的用来保存想当前指令的地址也叫PC指针 浮点运算寄存器 控制寄存器 CR0~CR4决定了CPU运行的模式和特征 中断与异常
PICprogrammable interrupt controller 可编程中断控制器 IRR: interrupt request register 中断请求寄存器 ISRin service register 服务中寄存器 IMRinterrupt mask register 中断屏蔽寄存器
PIC向中断提交中断流程
IR管脚上有触发电平若对应中断没有被屏蔽则IRR中对应位被置1PIC拉高INT管脚通知CPU中断发生CPU通过INTA管脚银达PICPIC收到INTA应答后将IRR中最高优先级中断位清0并设置对应的ISR位CPU通过INTA管脚第二次发出脉冲PIC收到后计算最高优先级的中断vector并提交到数据线上PIC等待CPU写EOI收到EOI后ISR中优先级最高的位被清0
多处理器平台出现后APIC应运而生其结构如下图摘自百度百科
概念
异常 异常最大的不同在于它是在程序的执行过程中同步发送的进程 是一个容器其中包含了当执行一个程序的特定实例时所用到的各种资源上下文是程序运行时所需要的寄存器的最小集合 上下文切换 用户态切换、内核态的切换进程切换中断上下文切换
I/O构架
Port I/O通过I/O端口访问设备寄存器X86有65536个8位的I/O端口64K可以使用IN/OUT命令访问端口MMIO Memory Map IO通过访问内存的方式来访问设备寄存器或设备RAM