保护模式下怎么和硬件打交道 ?
我问这个问题是站在开发操作系统的角度上来问的,大家不要告诉我通过系统调用来和硬件打交道。我想知道的是系统调用是怎么和硬件打交道的?是调用BIOS,还是直接操作端口?还是其它的方式?好像在保护模式下不是调用BIOS,在保护模式下中断调用是用到IDT。那究竟是怎么访问硬件的呢?是把实模式下的BIOS搬到保护模式下吗?还是直接操作硬件端口?如果是直接操作端口,比方说显卡,会不会不同的显卡端口不同?怎么能保持兼容呢?VESA VBE 3.0 是个BIOS软件接口规范,如果在保护模式下不用BIOS,那这些规范不是没有什么作用了?是不是都通过驱动来和硬件打交道?驱动是怎么和硬件打交道的?是调用BIOS还是操作端口?
不好意思,比较菜,望高人指点迷津。