Linux/Unix系统编程手册学习笔记
什么是操作系统、内核
内核的职责
- 进程调度(CPU切换,资源调度等)
- 内存管理
- 提供文件系统(文件的创建删除等)
- 创建和终止进程
- 对设备的访问(鼠标、键盘等输入输出设备)
- 联网
- 提供系统调用接口(API)
内核态与用户态
进程
- 程序: 包含了一系列信息的文件。
- 进程:一个可执行程序的实体。由内核定义的一个是抽象的实体,内核同时为该抽象实体分配用以执行程序的各项系统资源(内存,CPU等)
- 进程的组成:从内核角度看,进程由
用户内存空间
和一系列内核数据结构
组成。其中用户内存空间包含了程序代码及代码锁使用的变量。而内核数据结构则是用于维护进程状态信息(进程相关标识号,虚拟内存表,打开文件描述符,信号传递及处理相关信息,进程资源使用及限制,当前工作目录等信息)
Init进程
所有进程之父~
守护进程
常驻的进程,级别仅次于Init进程
环境列表(环境变量列表)
进程中的公共变量,入HOME,PATH等