操作系统
OS: Operating System,通用目的的软件程序,包括:
- 硬件驱动
- 进程管理
- 内存管理
- 网络管理
- 安全管理
- 文件管理
OS分类:
服务器OS:
- RHEL
- CentOS
- Windows Server
- AIX
桌面OS:
- Windows 10
- Windows 7
- Mac OS
- Fedora
移动设备OS:
- Android
- IOS
- YunOS
开发接口标准
ABI: Application Binary Interface
- ABI描述了应用程序与OS之间的底层接口
- 允许编译好的目标代码在使用兼容ABI的系统中无需改动就可以运行
API: Application Programming Interface
- API定义了源代码与库之间的接口
- 同样的源代码可以在支持这个API的任何系统编译
POSIX: Portable Operating System Interface
- IEEE在操作系统上定义的一系列API标准
- POSIX兼容的程序可以在任何POSIX操作系统中编译执行
运行程序格式:
Windows:
- EXE
- .dll - dynamic link library
- .lib
Linux:
- ELF
- .so - shared object
- .a
用户空间
- 用户空间: user space,用户程序的运行空间
- 为了安全,用户空间是隔离的,即使用户的程序崩溃,内核也不会受到影响
- 只能执行简单的运算,不能直接调动系统资源,必须通过系统接口 - system call,才能向内核发出指令
内核空间
- 内核空间: kernel space,Linux内核的运行空间
- 可以执行任意命令,调用一切系统资源
分区
window分区(MBR分区策略)
主分区:
- 一块硬盘最多四个主分区
- 对主机来说必须要有主分区,对硬盘来说可以没有主分区
- 主分区可以格式化,存储数据
扩展分区:
- 一块硬盘最多一个扩展分区
- 可以没有扩展分区
- 不可以格式化,存储数据.可以划分成更小的单元,即逻辑分区,来存储数据
逻辑分区:
- 可以格式化,存储数据
- Linux分区: 挂载mount