LINUX内核由五大部分组成,进程调度,内存管理,进程间通信,虚拟文件系统,网络接口,五个子系统组成。
进程的基本概念
1:程序是指令,数据,和组织形式的描述,在计算机中一般以文件的形式存在。
2:进程是正在运行的程序的实例,在计算机中是操作系统动态执行的基本单元。
3: 进程则是程序在计算机中的具体实现。进程是运行中的程序。
进程是由代码段,用户数据,以及系统数据段共同组成的一个执行的环境。
进程调度
1.基本原理
一个好的调度算法应当考虑以下几个方面
1公平,高效,响应时间,周转时间,吞吐率。
2.调度算法
1) 时间片轮询调度算法
时间片是分配给进程持续运行的一段时间。分时系统中,人机交互及时性,系统让每个进程依次的按照时间片轮流的方式。轮询调度算法:系统将所有的可运行进程按照先来先服务的原则排成一个队列,每次调度把CPU分配给队首进程。优点:保证公平性,缺点:不能反映优先级。
2)优先权调度算法
分为两种:
1:非抢占式优先权算法:不可剥夺调度,在这种方式下,系统一旦将CPU分配给可运行队列中优先权最高的进程,主要用于批处理系统。也可以用于实时性要求不高的系统。
2 : 抢占式优先权算法:能更好的满足紧迫进程的要求,常用于要求比较严格的实时系统以及性能要求较高的批处理和分时系统中.Linux也支持这种调度算法。
3)多级反馈队列
这是一种这种的算法本质上是综合了时间片轮询调度和抢占式的优点。类似于权的占比不一样。
4)实时调度
不仅要求任务的输出结果正确,还要求在规定的时限内输出结果。优点:既有较大的灵活性又获得了很小的调度延迟。缺点是比较复杂。进程同行
进程通信
概念:并发执行的进程中,为了协调一致地完成某项任务,彼此之间必须要交换数据或者信息,称之为进程间通信。
操作系统中,把进程中访问临界资源的那段代码称之为临界区,
进程中的互斥:一组并发进程中两个或者多个程序段,因共享某一资源使得这组并发进程不能同时同事进入临界区的关系称之为进程的互斥。
进程的同步 : 操作系统中,把异步环境下的一组并发进程在某些程序段上需要相互合作,互相等待,使得各个进程在某些程序段上鼻血按一定的顺序执行的制约关系称之为进程同步。具有同步关系的依据并发进程称之为合作。
LINUX之间的进程通信方式
1,管道机制 。2 信号机制 3 System V IPC机制
文件系统
文件系统是对文件储存系统进行组织,分配,管理的系统。负责文件的存储,保护,检索。 具体
负责建立,存入,读出,修改,删除文件,和控制文件的存取。
7.6.2 虚拟文件系统的内涵 (Virtual File System , VFS)
实质上将各种不同实际文件系统的操作和管理纳入统一管理,使得用户程序可以通过一个文件系统界面,也就是同一组系统调用,能够对各种不同的文件进行操作。