64位操作系统开发之学习篇
文章平均质量分 57
cndvdc
这个作者很懒,什么都没留下…
展开
-
开发64位操作系统的的准备工作
开发64位操作系统应该具备如下知识:1.汇编语言和C语言编程基础2.64位CPU架构的工作机制3.操作系统原理的基本常识4.各种硬件的编程原理.5.分区与文件系统基本原理 除了具备以上知识以外,还应具备如下客观条件:1.开发时间.开发操作系统是一个时间长的事情,而且利益回馈慢.如果你是个人,建议不要以开发操作系统为业,每个人都要吃饭,不去工作,专门开发操作系统是不现原创 2009-12-10 17:57:00 · 377 阅读 · 2 评论 -
64位指令2
ADD 带符号加 或 不带符号加格式1 add al,imm8imm8+al->al2 add ax,imm16imm16+ax->ax3 add eax,imm32imm32+eax->eax4 add rax,imm32符号扩展imm32+rax->rax5 add reg/mem8,imm8imm8+reg/mem8->reg6 add reg原创 2010-01-08 20:55:00 · 368 阅读 · 1 评论 -
AMD64架构之64位模式(四)RFLAGS
RFLAGS 标志寄存器,64位高32位保留,必须是0,底32位同EFLAGS位0,CF,进位标志位1,保留,按0读位2,PF,奇偶标志位3,保留,按0读位4,AF,辅助进位标志位5,保留,按0读位6,ZF,0标志位7,SF,符号标志位8,TF,陷阱标志位9,IF,中断标志位10,DF,方向标志位11,OF ,溢出标志位12,13 IOPL特原创 2010-01-06 21:38:00 · 503 阅读 · 0 评论 -
AMD64架构之64位模式(二)
上一次介绍了AMD64位模式的基本概要,从现在开始,我每期详细介绍其中的一项。系统资源(1)系统控制寄存器CR064位,低32位与IA32相同,高32位保留,必须是0,除ET位是只读位,其它都是可读可写。 位0,PE,PE=1启用保护模式,PE=0,禁止保护模式。当处理器启用保护模式时,启用段保护机制。 位1,MP,软件用MP位和任务切换控制位CR0.TS以控制WA原创 2010-01-04 09:33:00 · 740 阅读 · 0 评论 -
AMD64架构之64位模式(一)
AMD64和EM64T是同一种架构,包括两种模式,长模式和保护模式长模式包括两种子模式,即64位模式和兼容模式,本文只介绍64位模式64位模式有如下特点:1.线性地址=有效地址=偏移地址=0,一般禁止分段,采用分页存储模式页大小有两种,4KB 和2MB,64位线性地址,可实现40位物理地址映射(intel),或52位物理地址映射(AMD).线性地址必须用规范地址形式表示.2原创 2010-01-03 19:40:00 · 1521 阅读 · 0 评论 -
AMD64架构之64位模式(三)
系统资料(2)系统控制寄存器 CR2 ,64位,存放页故障线性地址,由页转换机制使用。当代码所访问的页不在内存时,处理器自动把页地址存入CR2,并引起缺页异常,此时缺页异常处理程序从硬盘中载入页到内存。 CR3,64位,位0-2保留,必须是0位3,PWT,控制页映射级4的写通或回写缓存策略。当PWT=1时,启用写通缓存,PWT=0,启用回写缓存。位4,PCD,控原创 2010-01-04 11:43:00 · 484 阅读 · 1 评论 -
操作系统的一般启动过程
1.寻找可引导设备,并从第一个可引导设备的引导扇区,读取一个扇区的内容,并复制到物理内存0000:7c00处,并执行这一段代码。2.引导扇区代码配合MBR寻找可引导分区,找到并从该分区读取操作系统加载器。3.操作系统加载器,搜集所有设备资源需求信息,配置系统设备和PNP设备,然后依次调用系统设备和外部设备初始化代码,最后加载和运行初始化程序。4.初始化程序将建立全局描述符表和中断描述符原创 2009-12-28 08:09:00 · 412 阅读 · 0 评论 -
为了全面,详细的理解64位CPU和操作系统原理,我买了这么多书
我买了这么多本书64位微处理器系统编程和应用编程 (侧重IA32,INTEL 64对比介绍,很详细)64位微处理器及其编程 (对汇编指令的介绍比较详细)64位微处理器应用编程 (对应用软件开发有指导作用)64位微处理器系统编程 (对系统软件开发有指导作用)ORANGS一个操作系统的实现(对理解操作系统基本要素有帮助)LINUX内核完全注释(对操作系统理解有帮助)深入理原创 2009-12-27 08:15:00 · 939 阅读 · 1 评论 -
C64基本蓝图
每一天,当我闲下来的时候,我就在构思,每天一点点,现在已经有个大概的轮廓了.暂时取名就叫C64,我不喜欢中国特有的东西都叫什么中华呀,中国呀,龙呀什么的,太没意思了.C64要具备以下特点:1.多用户,多任务,安全第一2.磁盘分为3部分:1),系统盘,除非升级,否则一切程序不可写,系统程序可读,用户程序不可访问.目的是保证操作系统每次启动都能正确启动,而不受恶意软件破坏2),原创 2009-12-25 08:32:00 · 404 阅读 · 1 评论 -
为什么开发64位操作系统?
在目前的通用CPU里,技术上最先进的是X64 ,不建议系统学习IA32,只要懂IA32的基本原理就可以了,X64架构汇编比X86要容易多了.即长模式,又分两种,64位模式和兼容模式,兼容模式其实就是有64位地址的保护模式,真正让CPU发挥性能的还是64位模式,在64位模式中,所有扩展寄存器可用,不分段,只有分页模式,汇编时不再考虑段基址,只考虑偏移即可.因为所有段的基址都为0.只有CS FS GS原创 2009-12-24 15:44:00 · 758 阅读 · 5 评论 -
64位指令1
从本期开始,陆续介绍64位指令两个操作数位宽要相同说明符号:imm8 8位立即数imm16 16位立即数imm32 32位立即数imm 64 64位立即数CC 表示16位,或32位,或64位reg 寄存器regCC CC位寄存器mem8 8位存储器操作数mem16 16位存储器操作数mem32 32位存储器操作数mem64原创 2010-01-08 13:35:00 · 432 阅读 · 0 评论