- 博客(4)
- 资源 (1)
- 收藏
- 关注
原创 2013-02-23 -一个简单的实模式跳转到保护模式程序(无loader功能)
写一个最简单的从实模式跳转到保护模式的程序。顺便学习温故下各个基本寄存的设置。 总的来说,实模式跳转到保护模式的基本思路和流程是: 1、准备好保护模式下的代码段以及数据段(通俗的说就是从实模式跳转到保护模式后,你到底要cpu做些啥。当然了,只是单纯的跳转一下玩玩也无妨,不过好歹跳转了下,总要留下点“在此一游”之类的豪情壮志吧~) 这里具体要做的第一件事情其实就是分配好内存吧。
2013-02-23 20:31:05 794
原创 2013-02-13 -loader
目前已经成功将100扇区的512bytes内容拷贝到物理地址0x10000上,详见下面memory dump: 磁盘上hex: memory dump: xp /512bx 0x10000 [bochs]: 0x0000000000010000 : 0xbe 0x01 0x00 0x00 0x00 0x00 0x10 0
2013-02-13 13:29:29 1103
原创 2013-2-12 - loader代码调试心得记录。
在ubuntu的环境下,使用dd命令进行磁盘文件的拷贝,貌似与bochs交互有问题(很有可能需要额外配置什么),目前存在的障碍是使用LBA28模式进行读数据的时候,会出现一直读不出来的问题,导致一直在等待读数据。代码走读后感觉没有问题,最大的嫌疑就是dd命令使用与bochs的交互上存在问题。该问题阻塞了2天,无解,holly shit 转战在win系统下,使用一个叫做vhd-w
2013-02-12 23:44:58 725
原创 2013-2-2 - simple-loader
目标:把主引导扇区改造成一个loader,从硬盘中将用户程序加载到内存中,之后将cpu处理权分配给用户程序。 1.NASM编译器使用汇编指令定义段: SECTION 段名称 SEGMENT 段名称 2.intel 要求段在起始物理内存中的起始地址16字节对齐: align=16 3.db: 1个字节 dw: 2个字节 dw:4个字节 4.磁盘中
2013-02-10 21:36:38 471
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人