操做系统,英文名称Operating System,简称OS,是计算机系统中必不可少的基础系统软件,它是应用程序运行以及用户操做必备的基础环境支撑,是计算机系统的核心。linux
操做系统与计算机硬件软件关系图以下:shell
操做系统就是处于用户与计算机系统硬件之间用于传递信息的系统程序软件。例如:操做系统会在接收到用户输入的信息后,将其传给计算机系统硬件核心进行处理,而后再把计算机系统硬件的处理结果返回给使用者。编程
和Windows操做系统软件同样,Linux也是一个操做系统软件。其在设计之初,就是基于Intel x86系列CPU架构的计算机的。它是一个基于POSIX的多用户、多任务而且支持多线程和多CPU的操做系统。小程序
Linux操做系统之因此如此流行,是由于它具备以下一下特色:缓存
1. Debian
Debian运行起来极其稳定,这使得它很是适合用于服务器。但它并不适合新手用户,而是适合系统管理员和高级用户。Debian支持现在的大多数架构(处理器)。
2.Gentoo
Gentoo并不是以预编译的形式出现,而是每次须要针对每一个系统进行编译。它被认为是最佳学习对象,能够进而了解Linux操做系统的内部运做原理。Gentoo这款操做系统适合对Linux已经彻底得心应手的那些用户。
3.Ubuntu
Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操做系统。Ubuntu侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行UbuntuLinux的移动设备上很常见。Ubuntu是新手用户确定爱不释手的一款操做系统。
4.RHEL
这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包括x86和x86_64。
5.CentOS
CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码从新构建而成。
6.Fedora
小巧的Fedora适合那些人:想尝试最早进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版以前,在该平台上进行开发和测试。
7.OpenSuse
OpenSuse这款Linux发行版是免费的,并不供商业用途使用,仍然供我的使用。它使用Yast来管理软件包。
程序=数据+指令
程序都必须载入内存,必须由CPU来运行
时间片slice 保存现场 恢复现场
缓存存储器 各级缓存就是为了提升运行速度
数据代码都存储在硬盘上
程序开发语言
机器语言 二进制
汇编语言(微码语言)
高级语言
强语言(先编译成二进制代码才能执行):C/C++ ,JAVA ,C#,B,VC,VB(可视化编程的B语言),VF
弱语言(边解释边执行):PHP,Python,shell
JAVAC,GCC
API应用程序接口,集成在操做系统内核中
API就是在不一样的CPU上,使用汇编语言(运行效率高)写出来的具备相同功能的程序。这个程序自己不会自动运行,它只是向应用程序提供访问硬件的接口
也能够说吗,API向程序虚拟了相同类型的执行环境。
system call系统调用
操做系统须要为用户提供用户操做界面(特殊的应用程序) shell
1.GUI(图形用户界面) KDE,CDE
2.CLI(命令行界面) BASH ,CSH,ZSH
library应用程序库
内核库(内核对象).ko
共享库 .so
dll(动态连接库)
/dev/sda1
sd-->serial disk 串行磁盘
a-->磁盘编号
sda1-->存放引导程序,引导分区,100M,挂载点:/boot
sda2-->交换分区(虚拟内存)
内存小于256M,至少256M交换分区;
内存大于256M,小于2GB,交换分区大小为物理内存的2倍
内存大于2G,交换分区不固定
挂载:将磁盘分区和文件夹关联在一块儿的过程,用来关联分区的文件夹叫挂载点。