对操作系统的思考
来源:互联网 发布:burberry 风衣 知乎 编辑:程序博客网 时间:2024/04/29 18:54
操作系统是一个软件。
在编写过裸机程序之后就知道一个程序跑起来是需要怎样的资源与怎样的环境的。这个时候组织这个环境与资源分配的便是操作系统。操作系统就是一个运行在裸机上的程序。
操作系统为上层应用提供接口。
一个操作系统可以为上层应用提供接口,这个时候程序员使用接口的时候就不是面对裸机了,而是面对抽象化之后的一个机器,这个机器就是操作系统。在操作系统抽象化之后,cpu芯片的工作调度与核心功能被封装,此时上层应用在使用cpu芯片计算功能的时候就是调用操作系统提供的接口了。如果要使用其他的硬件设备(外设),就需要使用在操作系统中集成(集成不知道这样说恰不恰当!)的驱动程序。
驱动程序在个人理解是对具体的硬件设备使用方法的软件抽象。此时配合操作系统接口,就能够使得用户在操作系统提供的接口中使用驱动程序封装的软件接口从而调度硬件设备,进而完成应用所要完成的功能。所以有了下图:
user
|
具体上层应用
|
bootloader ---> 操作系统 ------>处理器核心功能
|
驱动程序
|
外部设备(硬件资源)
booloader是上电后裸机运行的第一个程序,初始化机器以及重定位后面要运行的操作系统(重定位:使程序的链接地址与其所处位置一致,以免造成地址访问的错误),为操作系统运行提供环境。
操作系统是建立在处理器上的,驱动程序面向的是具体硬件,在集成了驱动程序以后的操作系统便可以统一组织起一台机器的各个部件,程序员就可以在此操作系统上进行编程,使用操作系统提供的软件接口访问到具体硬件,完成具体功能。
- 对操作系统的思考
- 对物联网操作系统的再思考
- 对国产操作系统发展的一些思考
- 对操作系统开发相关的一些问题的思考
- 对物联网操作系统特征和定位的思考
- 对思考的思考
- 桌面操作系统的思考
- 对无效思考的思考
- 后科技时代--操作系统的思考
- 后科技时代--操作系统的思考
- 操作系统--对操作系统的研究
- 对.Text的思考
- 对UML的思考
- 对婚姻的思考
- 对递归的思考
- 对"学习"的思考
- 对程序员的思考
- 对Xwindow的思考
- 视频播放界面智能暂停功能
- [FAQ05286] [Power] 如果抓取功耗问题 log
- [FAQ03776] [Power]关于RTC唤醒系统问题
- [FAQ04546] [power]休眠的过程中被CCIF_MD唤醒的状况分析
- [FAQ03519] [Power]关于待机平均功耗高的测试以及自行判断注意事项
- 对操作系统的思考
- [FAQ07421] 待机时,怎么看AP每次wake up起来的时长
- [FAQ09541] [Power]待机电流问题,如何查找EINT唤醒源
- [FAQ09542] [Power]待机电流问题,如何查找wakelock
- [FAQ08317] android apk 的root 权限和USB adb 权限的区别
- [FAQ03042] 如何编译MTK的模拟器
- 小组级git服务器搭建
- Git使用参考
- [C++11]_[初级]_[weak_ptr的使用场景]