——为什么学习操作系统
·重要性
1 .它是一门需要且综合了语言学习,数据结构,算法,计算机体系结构的课程
2. 它需要学生实践,将书本中的知识和操作系统一一对应
3.它是科学研究的基石之一,是计算机系统的基本组成部分
4.它是有硬件的发展和应用需求所驱动的
5.学术和工业的持续推进
·业界
1.微软,谷歌,Facebook。
2.苹果:iPhone,iPad,...以 OS 为核心。
·会议
1.SOSP(每两年举办一次,始于1967)
2.USENIX(每两年举办一次,始于1994)
3.以上两个会议恰好错开一年,也就是说,今年SOSP,明年就USENIX
·性质
1.代码量巨大,单单windows XP操作系统就有近 4500w 行代码,因此我们只需要了解核心代码
2.操作系统管理并发,异步,所以我们的编程一般容易出错
3.操作系统需要管理各种硬件出现的各种错误,并且能够及时反馈,是的操作系统比较复杂。
4.操作系统代码必须是可靠的,高效的,低耗CPU、内存和磁盘的
5.操作系统必须比用户程序拥有更高的稳定性
6.操作系统是系统安全的基础
7.操作系统需要权衡 空间与时间 、 性能和可预测性 、 公平和性能
·硬件
1.操作系统需要良好的硬件管理
2.合理的资源分配
3.协调处理好各硬件之间的关系,例如处理硬盘速度,CPU以及内存之间速度和存储空间的差异