本文为操作系统学习总结
操作系统(Operation System,OS)
没有安装操作系统的计算机,通常被称为裸机。如果想在逻辑上运行自己编写的程序,必须用及其语言书写程序。
操作系统可以直接操作硬件,并将其封装成系统调用。供程序员进行系统调用间接操作计算机的硬件,而不必使用机器语言。
我们用听歌曲来举例说明。我们听歌曲的操作步骤如下:
- 将歌曲文件从硬盘加载到内存
- 使用声卡对音频数据进行解码
- 将解码后的数据发送给音箱
程序员就可以只执行对应的系统调用,就可以播放歌曲了。
不同领域的主流操作系统
桌面操作系统
即装在个人电脑上的操作系统。
- Windows 系列:用户群体大,应用软件多;安全性和稳定性较差,用久了会很卡,一般重启即可。
- macOS:适合于开发人员,基于 Unix,提供给程序员很好的开发环境配置。
- Linux:应用软件少,更适合服务器和嵌入式领域。
服务器操作系统
下图为一个服务器,分为硬件和软件部分,红色框是电脑(硬件),再安装一个操作系统(软件)就可以对服务器进行维护和管理。图中场景为机房,带宽稳定,不同用户可使用服务器提供的资源。程序员可以安装软件远程登录到服务器,对其进行维护和日常管理。
- Linux:安全、稳定、免费,占有率高;相关配套服务器软件齐全。
- Windows Server:付费,占有率低。
Python 的 web 开发选择的服务器就是 Linux。
嵌入式操作系统
进行智能家居、人工智能等的开发
- Linux:内核小,开源、可自行定制
移动设备操作系统
- IOS
- Android(基于 Linux)
虚拟机
虚拟机通过软件模拟完整硬件系统功能。如果我们把虚拟机用出问题了,直接删除重装即可,还能保证原有的 Windows 不被损坏,利于我们学习陌生的操作系统。