
操作系统
文章平均质量分 91
时光菜刀
这个作者很懒,什么都没留下…
展开
-
《操作系统真象还原》读书笔记 第4章
0x1 保护模式基本概念物理内存地址不能直接被程序访问,程序内部的地址(虚拟地址)需要被转换成物理地址后再去访问,程序对此一无所知。地址转换是由处理器和操作系统共同协作完成的,处理器在硬件上提供地址转换部件,操作系统提供转换过程中所需的页表。0x1.1 实模式不是32位CPU,变成了16位32位CPU具有保护模式和实模式两种运行模式,可以兼容实模式下的程序。兼容实模式,是指能够正确处理好实模...原创 2020-02-03 09:59:53 · 957 阅读 · 1 评论 -
bochs调试方法
bochs一般用法bochs是一个开源x86虚拟机软件。在他的实现中定义了各种数据结构来模拟硬件,用软件模拟硬件速度慢。bochs的硬件调试体现在:1)可以查看页表、gdt、idt等数据结构2)可以查看栈中数据3)可以反汇编任意内存4)实模式、保护模式互相变换时提醒5)中断发生时提醒bochs中x和xp命令都是用来查看内存的,它们两个的区别在于x命令用于查看线性地址,而xp用来查看...原创 2020-01-29 18:28:00 · 3023 阅读 · 0 评论 -
《操作系统真象还原》读书笔记 第3章
0x1 地址、section、vstart0x1.1 什么是地址地址只是数字,描述各种符号在源程序中的位置,它是源代码文件中各符号偏移文件开头的距离。由于指令和变量所占内存大小不同,故他们相对于文件开头偏移量参差不齐。源码文件中各符号地址是由编译器来规划的。编译器的工作就是给各符号编址。编译器根据所在硬件平台特性,将源代码中的每一个符号(指令和数据)都按照硬件平台的特性分配空间,在不考虑对齐...原创 2020-01-29 15:17:08 · 1557 阅读 · 0 评论 -
《操作系统真象还原》读书笔记 第2章
0x1 计算机启动过程为什么程序要载入内存CPU的硬件电路被设计成只能运行处于内存中的程序,是因为内存内存运速快,且容量大。其次,操作系统可以存储在软盘上,也可以存储在硬盘上,甚至U盘什么是载入内存所谓载入内存,大致上分为两部分:1)程序被加载器(软件或硬件加载到某个区域)。2)CPU的cs:ip寄存器被指向这个程序的起始地址。操作系统在加载程序时,是需要某个加载器来将用户程序存储到...原创 2020-01-25 21:54:26 · 483 阅读 · 0 评论 -
《操作系统真象还原》读书笔记 第1章
0x1 工作环境部署0x1.1开发操作系统的环境及工具1)gcc编译器2)汇编语言编译器nasm3)VMware workstation Pro v15.1.0 build-135910404)Ubuntu 14.04 LTS5)bochs v2.6.9为了方便起见,我是用的是WMare+Ubuntu进行开发(纯属个人习惯),具体安装Ubuntu的步骤我就不在这里细说了,大家百度一下...原创 2020-01-24 10:59:24 · 735 阅读 · 0 评论 -
《操作系统真象还原》读书笔记 第0章
0x1 软件访问硬件的方法软硬件之间的访问是依赖于各种硬件设备,也就是IO接口。接口就是生产硬件的标准,所有硬件必须按照这个标准才能让软件和硬件互通。硬件在输入输出上分为并行和串行两种方式,相应接口也就是串行和并行接口。串行硬件通过串行接口与CPU通信,CPU通过串行接口与串行设备数据传输。并行同理,只有接口不同的差异。访问外部硬件的两种方式:1、将某个外设的内存映射到一定范围的地址空间中...原创 2020-01-23 19:55:52 · 702 阅读 · 1 评论