读书笔记-Linux概述

Linux系统概述

【阅读《Linux网络编程》笔记】

基本结构

综述

硬件部分向操作系统提供基本服务。操作系统直接与硬件交互,向程序提供公共服务,并使他们同硬件特性隔离。

外层的程序,诸如shell及编辑程序(vi),是通过引用一组明确定义的系统调用而与内核交互的。这些系统调用通知内核为调用程序做各种操作,并在内核与调用程序直接交换数据。

系统调用及其实现系统调用的内部算法形成了内核的主体。内核提供了UNIX/LINUX系统全部引用程序所依赖的服务。

【内核的两个主要成分】文件子系统 进程控制子系统

文件子系统管理文件:分配文件看见 管理空闲空间 控制对文件的存取 为用户检索数据

进程控制子系统负责进程同步、进程间通讯、存储管理、进程调度。

当要执行一个文件而把该文件装入存储器中时,文件子系统与进程控制子系统交互:进程子系统在执行可执行文件之前,把它们读到内存中。输入输出存储管理模块控制存储分配。在任何时刻,只要系统没有足够的屋里存储供所有进程使用,核心就在内存与二级存储之间对进程进行交换,以便所有的进程都得到公平的执行机会

调度程序模块把CPU分配给进程。该模块调度个进程依次运行,直到它们因等待资源二自愿放弃CPU,或知道它们最近一次的运行时间超出一个时间量

流和标准I/O库

“流”是内核空间中的流驱动程序与用户空间中的进程之间的一种全双工处理和数据传输通路。在内核中,流通过流首、驱动程序以及它们之间的零个或多个模快组成。

基于流的I/O库(C语言),为标准I/O库。

进程

UNIX引入进程这个概念。UNIX的进程是一个正在执行的程序的映像。

一个程序是一个可执行文件,一个进程则是一个执行总的程序实例。

在UNIX/Linux系统中可以同时执行多个进程(多任务设计)系统中可以同时存在一个程序的多个实例。各种系统调用运行进程创建新进程、终止进程、对进程执行的阶段进行同步及控制对各种事件的反映。

在进程使用系统调用的条件下,进程便相互独立的执行了。

你可能感兴趣的:(读书笔记-Linux概述)