Linux/Unix系统编程手册学习笔记

什么是操作系统、内核

Linux/Unix系统编程手册学习笔记

内核的职责

  • 进程调度(CPU切换,资源调度等)
  • 内存管理
  • 提供文件系统(文件的创建删除等)
  • 创建和终止进程
  • 对设备的访问(鼠标、键盘等输入输出设备)
  • 联网
  • 提供系统调用接口(API)

内核态与用户态

Linux/Unix系统编程手册学习笔记

进程

Linux/Unix系统编程手册学习笔记

  • 程序: 包含了一系列信息的文件。
  • 进程:一个可执行程序的实体。由内核定义的一个是抽象的实体,内核同时为该抽象实体分配用以执行程序的各项系统资源(内存,CPU等)
  • 进程的组成:从内核角度看,进程由用户内存空间一系列内核数据结构组成。其中用户内存空间包含了程序代码及代码锁使用的变量。而内核数据结构则是用于维护进程状态信息(进程相关标识号,虚拟内存表,打开文件描述符,信号传递及处理相关信息,进程资源使用及限制,当前工作目录等信息)

Init进程

所有进程之父~
Linux/Unix系统编程手册学习笔记

守护进程

常驻的进程,级别仅次于Init进程
Linux/Unix系统编程手册学习笔记

环境列表(环境变量列表)

进程中的公共变量,入HOME,PATH等
Linux/Unix系统编程手册学习笔记

系统调用

Linux/Unix系统编程手册学习笔记