
操作系统
dailelelelele
这个作者很懒,什么都没留下…
展开
-
浅谈-计算机加电后的启动过程(二)
在浅谈-计算机加电后的启动过程(一)中,已经谈了从开机后到实模式的过程, 这次我们继续浅谈一下保护模式下发生的事情。这次我们先看看都发生了那些事, 然后在谈为什么会有这些事情。总览上一篇谈到了加载器, 加载器是从实模式过渡到保护模式的。在加载器中,首先先建立全局描述符表。接下来准备进入保护模式。进入保护模式的三要素:打开A20加载GDT将cr0的pe位置为1进入保护模式后,启用分页机制,然后开始加载内核。实模式和保护模式起初是没有实模式这一说法的。只是这种模式有很多缺点,然后为了克原创 2020-11-09 00:07:47 · 442 阅读 · 0 评论 -
浅谈-计算机加电后的启动过程(一)
加载BIOS当PC的电源打开后, 80x86结构的CPU将自动进入实模式.并且CPU的 cs:ip 寄存器被强制初始化为 0xF0000 : 0xFFF0.先抛出来个问题, 为什么 cs:ip 寄存器会被初始化为0xF0000 : 0xFFF0 ?继续往后看,当主机加电后,第一个运行的软件是BIOS,但是此时由于计算机刚加电,内存里还没有数据,所以BIOS并不是放在内存中的,而是放在ROM(只读存储器).而BIOS由硬件来加载,被加载到 0xF0000~0xFFFFF处.上面提到过,cs:ip被初始原创 2020-11-05 15:00:16 · 2386 阅读 · 0 评论 -
浅谈虚拟内存(上)
前言:在谈虚拟内存之前,我们先追本溯源,看看在虚拟内存出现之前,存储器抽象是什么样的。并且它是怎样一步一步进行演进的。无存储器抽象没错,是无存储器抽象,在早期的计算机中,没有存储器抽象这个概念。每一条指令都是直接在物理内存(从0到某个上限地址的集合)上进行操作。带来的问题:1: 你运行了两个程序,如果两个程序在同一个地址空间都会写入数据,那么这个数据是第一个程序的还是第二个程序?结果:这就会导致先写数据的程序的数据丢失。出错点:不同的程序相互访问、改写了不属于自己的数据。改进:针对这个问原创 2020-09-14 20:20:04 · 294 阅读 · 0 评论 -
存储器及其存储器的层级结构
随机访问存储器我解释一下随机访问的意思。随机访问:访问任何一个内存单元的速度和它的位置(地址)无关。随机访问存储器(RAM)分为两类:静态RAM,动态RAM。静态RAM(SRAM)静态RAM比动态RAM更快,同时静态RAM也更贵。因为快,所以经常用来作为高速缓存存储器。只要SRAM处在通电状态下,里面的数据就可以被保存下来。如果没有通电,数据就会丢失。SRAM的每一个存储单元(每一个比特位)是用一个6晶体管电路实现的。所以SRAM的存储密度不高。因为SRAM的电路简单,所以访问速度很快动态R原创 2020-09-09 22:16:59 · 726 阅读 · 0 评论