Linux基础知识 Linux&Unix
说起Linux,就不得不提Unix操作系统。
Unix系统号称世界上最稳定的系统,就连苹果公司也从中获取灵感开发出了移动端大名鼎鼎的IOS。
Unix操作系统有一个特点即为多用户多任务,同一时刻允许多个用户同时使用该系统且互不干扰。
Linux的全称为GNU/Linux,内核于1991年10月5日首次发布,是基于Unix系统开发而来的。
它的基本思想是一切皆文件,其描述如下:
每个文件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。
Linux全称中的GNU也是一个可以聊的点,GNU是一个项目,由Richard Stallman在1983年9月27日公开发起,它的目标就是创建一套完全自由的操作系统,在其中有一条GPL条款,该条款大体思想如下:
可以自由的使用,复制,修改,发布GNU项目下的软件。
所有GNU软件都有一份在进制其他人添加任何限制的情况下授予所有权利给任何人的协议条款。
1.你有自由以任何目的来运行该程序
2.你有修改程序满足自己需求的自由
3.你有权利重新发布副本,既可以白送也可以收取一定的费用
4.你有权利发布该程序修改过的版本,从而让其他人得益于你的改进
所以Linux其源代码完全开源,历经这么多年的沉淀已经非常优秀,大量的程序员对研究它乐此不疲。
Os&Kernel&系统调用接口
Os即为操作系统的意思,操作系统是一个用来协调,管控计算机硬件和软件资源的系统程序。它位于硬件和应用程序之间。
每个操作系统都有一个内核Kernel,它是为应用程序提供对计算机硬件安全访问的一个软件,负责所有的物理资源。包括:文件系统,内存管理,设备管理和进程管理。
因此我们一般将计算机分为三层:
一个应用软件如果想操纵底层硬件,必须经过系统调用接口发起系统调用,再由系统调用操纵内核,最后经内核帮助调用底层的系统硬件。
所以说操作系统的调用接口是服务于应用层面的软件的,但其本身属于操作系统这一层。
在内核进行操纵硬件时,实际上会切换CPU状态,内核态与用户态,详情参见: 计算机基础
镜像安装Linux下有很多发行版本,如最近大火的UOS常年霸占新闻头条,除此之外还有CENTOS(企业级), RHEL(红帽), FEDORA, UBUNTU(乌班图), SUSE等...
在这里我将采用CentOs7.3进行展示,其实各大发行版本的命令大差不差,可以说一通百通。
Windows环境下可采用虚拟机的方式进行安装,这里我将采用vmware workstation:
点击进行下载Vmware workstation:版本(16.1.0),激活密钥:
ZF3R0-FHED2-M80TY-8QYGC-NPKYF在下载虚拟机时,同时下载Centos7.3:
点击进行下载Centos 7.3 iso:
这里将不演示Vmware的安装,一路点击下一步即可。
安装Centos镜像:
Centos安装