操作系统与中间件
文章平均质量分 80
学习能减肥
这个作者很懒,什么都没留下…
展开
-
简述进程管理模块
进程管理进程作为用户操作的实体,它贯穿操作系统的整个生命周期,而程序是由若干段二进制代码组成的。进程可以说是程序的运行态抽象,即运行于处理器中的二进制码叫做进程,保存在存储介质中的二进制码叫做程序。进程会在执行过程中引入运行环境维护信息,因此进程管理啊主要涉及两个部分内容:进程控制结构体和进程间调度策略。进程控制结构体用于记录和手机进程运行时的资源消耗信息,并维护程序运行的现场环境;进程间调度策略主要负责决策一个进程将在何时能获得处理器的执行权。简述进程管理模块进程作为拥有执行资源的最小单位,他为每原创 2021-11-14 21:41:25 · 1085 阅读 · 0 评论 -
实现系统调用API
实现系统调用API 系统调用API作为应用层与内核层的重要通信手段已被使用到各种应用场合,但应用层与内核层间的通信手段不只系统调用API一种,我们还可采用中断、地址重映射等方式在这两层间建立通信连接,不过最广泛使用的通信方式依然是系统调用API。本次目的在于实现通过SYSENTER汇编指令完成应用层到内核层的跳转。SYSENTER指令是一个快速进入0级特权的指令。在执行之前,处理器必须为其提供0级特权的衔接程序和0级特权全的栈空间,这些数据保存在MSR寄存器和通用寄存器当中。IA32_SYSEN原创 2021-11-14 21:40:45 · 599 阅读 · 0 评论 -
实际中断处理
中断处理处理外界发出的信号。中断信号可能是关于数据读写操作的,也可能与外部设备控制有关。Intel处理器只有一个外部中断引脚INTR,为了使处理器能够同时接收多个硬件设备发送来的中断请求信号,特将锁有外部设备的中断请求汇总到中断控制器,再经由中断控制器的仲裁后,有选择性地将中断请求信号依次发往处理器的外部中断引脚INTR。再多核处理器出现前,8269A PIC(Programmable Interrupt Controller,可编程中断处理器)是最普遍的中断控制器.目前APIC(Advanced P原创 2021-11-14 21:39:59 · 556 阅读 · 0 评论 -
跳转到应用层
跳转到应用层到这一步简陋内核初步完成,此时的系统位于0级特权的内核层,而应用程序位于3特权级的应用层,若想从内核到应用层,在特权级跳转的过程中必须提供目标代码段和栈段以及其他跳转信息。X86中的门存在的目的由于操作系统运行在0级特权下,应用程序在3级特权下,出于保护和稳定的目的,操作系统通过"门"机制向用户态程序提供必要服务。共有四种门:中断门,陷阱门,调用门,任务门。其中中断门,陷阱门,任务门都可以由门描述符描述(IDT)如何跳转特权级跳转的过程中必须提供目标代码段和栈段以及其他跳转信息。原创 2021-11-14 21:39:19 · 235 阅读 · 0 评论 -
初步内存管理
初级内存管理展示如何获取物理内容信息、统计可用物理内存 页数量以及内存分配物理页等相对基础的功能。关于可用物理内存的相关信息,已经在Loader引导加载程序中通过BIOS中断服务程序获得,同时系统采用2MB物理页。获取物理内存信息物理信息通过BIOS中断服务程序INT 15h AX=E820h获得,并保存在物理地址7E00h处。接下来,将会把物理地址7E00h处的信息提取出来,转换成相应结构体再加以统计。地址7E00h出的物理地址空间信息存有若干组,他们描述计算机平台的地址空间划分情况,其数量会依原创 2021-10-24 21:05:36 · 103 阅读 · 0 评论 -
操作系统如何建立异常处理?
异常的分类错误(fault) 错误是一种能被修复的异常。只要错误被修正,处理器可将程序或任务的运行环境还原至异常发生前,并重新执行产生异常的指令,也就是说异常的返回地址指向产生错误的指令,而不是其后的位置。陷阱(trap) 陷阱异常同样运行处理器集训执行程序或任务,只不过处理器会跳过产生异常的指令,即陷阱异常的返回地址指向诱发陷阱指令之后的地址。终止(abort) 终止异常用于报告非常严重的错误,它往往无法准确提供产生遗产的位置,同时也不允许程序或任务继续执行,典型的终止异常有硬件错误或系统原创 2021-10-20 20:10:15 · 249 阅读 · 0 评论 -
Loader
Boot将代码的位置放置到0x7c00这个位置后,BIOS上电自检后就会跳转到这个位置执行Boot程序。Boot程序要做的就是在文件系统里一个目录项一个目录项的检索出loader.bin代码,放置到指定位置进行执行。之后的执行权都转交到了Loader上。Loader会检测一下几部分:检测硬件信息。内核运行在非实模式下,然而很多的硬件信息需要在实模式下的BIOS中断服务中获取。处理器模式切换引导加载必经过三个模式:实模式(16位)->保护模式(32位)->长模式(64位)。CP原创 2021-10-20 20:08:38 · 352 阅读 · 0 评论 -
一文贯穿操作系统内核架构与当代软件架构迭代
前言在日复一日地使用各种中间件和学习原理时,笔者陷入了迷茫,各种中间件层出不穷:到底何时能学完?技术的本质到底是什么?学习到底怎么才能学习到根源?但是,不难发现中间件日趋同质化,他们都朝着一个既定目标:进入内存加快运行速度。但是进入了内存也不意味着快了,还得需要良好的数据结构去保障内存的空间利用和搜索效率。反复思考,日夜琢磨。我终于得到了万物基于OS这个感触,虽然之前一直听说这句话,但直到最近的深入学习才感受到刻骨。至此,特地开启一个新的系列,此系列不仅立志于内核相关内容分析,也专注与内核原理研究原创 2021-09-17 10:48:55 · 112 阅读 · 0 评论