操作系统原理:操作系统的启动 中断/异常/系统调用

操作系统的存储刚开始并不是内存里,而是先放在硬盘DIsk上   。由BIOS(基本输入输出系统)提供支持。

开机时,BIOS首先检查外设,检查完没问题。再加载相应的软件 。

Bootloader: 这个程序的作用就是将 操作系统从硬盘加载到内存中。 BIOS 预先占用了系统内存从640kb开始到1M 。内存地址可以表示成 CS:IP     其中CS 是段寄存器,IP是指令寄存器 ,这两个寄存器的组合就可以指定成具体的内存地址。以X86 为例,BIOS启动的开始地址为 CS:IP =0xf000:fff0. Bootloader一般放在第一个硬盘扇区。

 

BIOS启动首先自检,检查外设是否能正常工作,寻找显卡,鼠标,键盘等。当检查可以正常工作时,将bootloader程序从硬盘放到内存中去(512个字节),以X86 为例,加载到0x7c00的开始地址。此时CPU控制权交给bootloader,执行bootloader,找到硬盘中操作系统的起始地址和操作系统长度,把OS放到内存中。之后把CPU控制权交给OS。

 

 

系统调用(system call):为应用程序请求操作提供服务。可异步和同步,对于返回值,同步会等待值返回再执行下一步,异步发出系统调用请求后,紧接着就会执行下一步操作。

异常 (Exception): 应用程序产生的,在执行过程中发生非法的指令,破坏其他程序的处理状态。异常是同步的

中断 (interrupt;): 来源于外设,是异步的,外设不清楚什么时候中断会发生。中断时持续的,对应用程序时透明的,中断即停止应用程序的执行,只不过暂停时间很短感受不清楚。

 

操作系统是可以信任的软件。访问外设需要通过操作系统访问。操作系统屏蔽对外设的细节处理过程,为上层软件提供统一的访问外设的接口。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值