今天是参加笔记活动的的第5天
Linux系统结构
Linux系统一般有4个主要部分
- 内核
- shell
- 文件系统
- 应用程序
Linux体系结构
- 内核是硬件与软件之间的中间层
- 内核是一个资源管理程序
- 内核提供一组面向系统的命令
体系结构子目录都包含许多其他子目录,这些子目录专注于内核的特定方面,如引导、内核、内存管理等。
进程管理
- 进程是正在执行的一个程序或命令
- 进程有自己的地址空间,占用一定的系统资源
- 一个CPU核同一时间只能运行一个进程
- 进程由他的进程ID(PID)和他的父进程的进程ID(PPID)唯一识别
进程调度
进程调度是指操作系统按某种策略或规则选择进程占用CPU进行运行的过程
- R(TASK_RUNNING),可执行状态
- S(TASK_INTERRUPTIBLE),可中断的睡眠状态
- D(TASK_UNINTERRUPTIBLE),不可中断的睡眠状态
- T(TASK_STOPPED OR TASK_TRACED),暂停状态或跟踪状态
- Z(TASK_DEAD-EXIT_ZOMBIE)退出状态,进程成为僵尸进程
- X(TASK_DEAD-EXIT_DEAD),退出状态,进程即将被销毁
进程调度原则
- 一个CPU核同一时间智能云星星一个进程
- 每个进程有似乎相等的执行时间
- 对于逻辑CPU而言进程调度使用轮询的方式执行,当轮询完成则回到第一个进程反复
- 进程执行消耗时间和进程量成正比
进程的系统调用
- 内核空间(kernal space):系统内核运行的空间
- 用户空间(User Space):应用程序运行的空间
当进程运行在内核空间时就处于内核态,而进程运行在用户空间时则处于用户态。