能力值:
( LV10,RANK:170 )
|
-
-
2 楼
保护模式下,非实模式
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
IO端口行不行?SRB到最后也是IO端口
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
我記得組合語言的硬體中斷表,本身就有讀寫硬碟的中斷。
因為是16位元,所以int的中斷表可以用,大部分應該在BIOS階段都會用中斷表
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
bios int 13h~
|
能力值:
( LV8,RANK:120 )
|
-
-
6 楼
int 13h好像只能寻址很小的硬盘空间,
不知道是不是?
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
Basic Int13h是8G的磁盘空间
扩展int 13h就多了
|
能力值:
( LV2,RANK:10 )
在线值:

|
-
-
8 楼
保护模式下就操作端口咯,《Orangs一个操作系统的实现》里面有介绍
|
能力值:
( LV13,RANK:460 )
|
-
-
9 楼
int 13,调试一下,主引导扇区的代码:)
debug
a
mov ax,0201
mov bx,0200
mov cx,0100
mov dx,0080
int 13
t...
忆起当年在网吧被还原卡虐的经历,这段代码不知敲了多少遍~  ,往事不堪回首
|
能力值:
( LV10,RANK:170 )
|
-
-
10 楼
调int 13需要切换到实模式 ,在驱动中不怎么现实吧
|
能力值:
( LV10,RANK:170 )
|
-
-
11 楼
不过ntldr中保护模式阶段的磁盘io,也是通过int 13
但是windows内核起来之后,再切换到实模式 不知能不能搞
|
能力值:
( LV10,RANK:170 )
|
-
-
12 楼
由于我的磁盘io操作是要在内核加载之后,磁盘控制器驱动工作之前
所以感觉局限性有些大
|
能力值:
( LV3,RANK:30 )
在线值:

|
-
-
13 楼
ntldr阶段是 int 13x
但是一旦进入保护模式直到磁盘控制器驱动工作之前
是完全没有读写磁盘操作的
当初做pxe时研究过~
因为我hook int13x 根本没必要考虑保护模式的问题
|
能力值:
( LV10,RANK:170 )
|
-
-
14 楼
 我就是要在这个“完全没有读写磁盘操作”的阶段读磁盘
实在没办法的话 就只能用内存来传递了
我是在实模式pxe环境下,通过tcp协议下载30k~2M左右的数据,然后内核加载后的boot阶段使用。测试了下,通过内存的话,最多只能传递0.5M左右的数据,看来只能满足有限的需求了。
|
能力值:
( LV10,RANK:170 )
|
-
-
15 楼
hook int 13进行网络转发,做虚拟盘 、传统无盘的话,确实是没必要考虑保护模式。应为到了你的hook函数里面来了就是实模式了。
但是现在要显示一个功能就是,NBP(net boot proogram)启动时从网络上下载当前机器的网卡驱动,然后在boot阶段加载,驱动网卡无盘启动。
体积小的驱动直接放到内存中就行了,这个已测试通过。
就怕遇到体积大得网卡驱动,那就得通过其他途径来传递了。
|
|
|