没有操作系统的电脑就是个裸机。操作系统是用来跟计算机硬件打交道的,比如让CPU干活,在内存中找数据,从硬盘中加载文件。这些打交道的方法封装成系统调用。开发软件的时候就可以直接用系统调用的方法,就是访问。
操作系统的作用:
1)直接操作硬件;
2)把操作硬件的代码封装成系统调用,供程序员通过系统调用来间接地操作硬件。
操作系统作为接口的示意图
不同应用领域的主流操作系统
- 桌面操作系统
1)Windows系列 用户群体大
2)macOS系列 适用于开发人员
3)Linux应用软件少 - 服务器操作系统(服务器见机房的大箱子)
1)Linux 安全稳定免费,占有率高(Python的应用场景:Web开发)
2)Windows Server 付费,占有率低 - 嵌入式操作系统(开发智能硬件/机器人/家居)
Linux 内核小,开源 - 移动设备操作系统
苹果iOS
谷歌Android(基于Linux)
虚拟机 Virtual Machine
虚拟机就是一套软件,通过软件模拟的具有完整硬件系统功能的,运行在一个完全隔离环境中的完整计算机系统。在虚拟机上学习新的操作系统,玩坏了就重新装一个。
常用:VMware,Parallels
Linux 的内核与发行版
内核kernel中由终端命令控制系统调用。内核版本又有稳定版和开发版。在内核基础上搭建桌面应用系统,这一套东西就是Linux发行版(包含内核的一体),也叫GNU。
内核只有一个,发行版有很多个:乌班图Ubuntu,红帽子Redhat等等。
Linux的文件和目录结构
单用户操作系统:一台计算机在同一时间只能由一个用户使用,一个用户独享系统的全部硬件和软件资源。
多用户操作系统:一台计算机在同一时间可以由多个用户使用,多个用户共同享用系统的全部硬件和软件资源。Unix(Linux的前身)和Linux的设计初衷就是这个。
Linux不像windows有盘符,只有一个根目录/(对,就是用一个斜线来表示)。
/home目录下面就是多用户。每个用户登陆进来各自在各自家里建立目录处理文件,不能去别人家乱搞。
/home目录是系统默认的用户家目录。~表示当前用户的家目录。所以根目录下的文件别乱删,搞家目录的那些就行。
/etc是系统服务器配置文件存放的目录。
/bin目录保存可执行的二进制文件,如终端命令。
/boot放置Linux启动时用的文件,如内核文件:/boot/vmlinuz,系统引导管理器:/boot/grub。