首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【操作系统】02:OS难吗?好玩吗?

【操作系统】02:OS难吗?好玩吗?

作者头像
Skrrapper
发布2025-06-13 15:26:59
发布2025-06-13 15:26:59
910
举报
文章被收录于专栏:技术分享技术分享

【操作系统】OS难吗?好玩吗?

计算机可以看成三层关系:硬件-操作系统-应用程序,程序员可以从这三个方面对计算机进行操作。

难的第一个原因:操作系统中,内核的编程环境比较困难。当你在编写、修改,扩展内核,或者写一个新的操作系统内核时,你实际上在提供一个基础设施让别人来运行他们的程序。

难的第二个原因:想要实现一个好的操作系统,就需要在看似矛盾的要求中找到平衡点。

  • 想要操作系统既高效又易用。 高效通常意味着操作系统需要在离硬件近的low-level进行操作,而易用则要求操作系统为应用程序提供抽象的high-level可移植接口。所以,提供一个简单可移植,同时又高效的抽象接口需要一定的技巧。
  • 想要提供强大的操作系统服务,又想要简单的接口。 强大的操作系统服务用来分担运行应用程序的压力,简单的接口用来简化程序员的操作,便于理解和使用。
  • 安全性与灵活性 希望给与应用程序尽可能多的灵活性,不会限制应用程序,所以需要内核具备灵活的接口。但是另一方面,你的确需要在某种程度上限制应用程序,因为你会想要安全性。我们希望给程序员完全的自由,但是实际上又不能是真正的完全自由,因为我们不想要程序员能直接访问到硬件,干扰到其他的应用程序,或者干扰操作系统的行为。

好玩吗?好玩!

  • 第一:操作系统提供了大量的特性和大量的服务,但是它们趋向于相互交互。交互的方式可以各式各样,需要你发挥思考和想象力。
  • 第二:一个好的操作系统可以满足广泛的使用场景。
  • 第三:如果你对于计算机的运行原理感兴趣,对于你打开计算机以后实际发生的事情感兴趣,那么这门课程你就选对了。
  • 第四:如果你喜欢基础架构,比如你喜欢构建一些其他程序可以使用的服务,那么这门课程都是有关基础架构的内容,因为操作系统就是基础架构。
  • 第五:如果你曾经花费了大量的时间来定位应用程序的Bug,或者定位安全的问题,那么你会发现这些经历通常需要理解操作系统是如何运作的。比如从根本上来说,操作系统涉及了很多安全相关的策略。当程序运行出错时,操作系统需要来收拾残局,而这一步也通常包括在定位问题中。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-06-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档