我的一点思考——操作系统的精髓

发表于:2011-10-24 10:08

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:cutesource    来源:51Testing软件测试网采编

  最近闲暇之余翻出大学时期操作系统课本,以系统架构的角度重新学习操作系统。

  当不再把操作系统当作技术和知识点来学习的时候,完全有了另外一种认识,以前感觉操作系统是个集各种高端技术的领域,是那些技术大牛搞的领域,现在的感觉是操作系统实际上就是个管理制度的集合,像一个公司甚至是社会,为了让这个公司运行正常,管理者想出各种办法制定了各种政策,很多政策的制定并不是天才们的凭空发明,而是在被各种问题给“逼”出来的。操作系统的发展史就说明了这一点,操作系统的发展就是在硬件不断发展和人的需求不断升级给逼出来的。

  学习操作系统先最好不要陷入到技术细节里,而是站在设计者的角度,想想为什么要做出如此设计,是遇到了什么问题。比如关于锁的设计,实际上是当时需要一个玩意来保证一组操作能不受其他操作的打扰,而要设计锁就需要有原子性操作的底层保证和对锁的合理使用,这些东西当然基于各种“高端”技术,但透过技术细节,发现只是为了实现一个约定的制度。再比如各种进程调度算法,实际上是需要一个规则来公平地有效地把CPU分配给各个需要资源的进程,这其实是个各行各业都会面临的共性问题,而各种调度算法也在其他领域能找到原型,基于的是一些共性的原理,只是实现方式不同罢了。

  因此,操作系统的精髓在于制定的各种制度和原则,学习操作系统也应该重点学习这些东西。对于架构师而言,操作系统也折射出一个道理,优秀的系统不是高端技术的堆砌,而是对特定问题采取最有效最合适的制度和实现。

《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • liangliang1
    2011-10-26 10:52:28

    醍醐灌顶啊!

  • demo2s
    2011-10-24 16:22:48

    很好!

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号