开源操作系统与计算机系统概述
1. 开源操作系统简介
随着网络技术的改进和网络实现代码的优化,基于Web的计算催生了新的设备类别,如负载均衡器,它能在一组相似的服务器之间分配网络连接。操作系统也从像Windows 95这样单纯的Web客户端,发展到Linux和Windows XP等既可以作为Web服务器又可以作为客户端的系统。Web的发展增加了设备的复杂性,因为用户要求设备具备Web功能。
开源操作系统以源代码形式提供,而非编译后的二进制代码。Linux是最著名的开源操作系统,而Microsoft Windows则是闭源系统的典型代表。从源代码开始,程序员可以生成能在系统上执行的二进制代码。相反,从二进制代码逆向工程获取源代码是一项艰巨的任务,而且像注释这样有用的信息也无法恢复。通过查看实际源代码来学习操作系统比阅读代码摘要更有用。学生可以修改操作系统的源代码,然后编译并运行代码来测试这些更改,这是一种很好的学习方法。
开源操作系统有很多好处:
- 有一群感兴趣(通常是无偿的)程序员组成的社区,他们通过帮助调试、分析代码、提供支持和提出更改建议来为代码做出贡献。
- 开源代码可能比闭源代码更安全,因为有更多的人在查看代码。虽然开源代码也有漏洞,但由于使用和查看代码的人数众多,漏洞往往能更快地被发现和修复。
- 一些商业公司,如Red Hat、SUSE、Sun等,开源他们的代码后获得了好处,而不是遭受损失。公司可以通过支持合同和销售运行软件的硬件来获得收入。
2. 开源操作系统的历史
在现代计算的早期(20世纪50年代),大量软件以开源形式提供。麻省理工学院技术模型铁路俱乐部的原始黑客(计算机爱好者)会把他们