linux(1)

1. 什么是Linux

1.1 Linux系统内部结构

Linux可划分为以下四部分:

  • Linux内核
  • GNU工具组件
  • 图形化桌面环境
  • 应用软件

下图是linux系统的基本结构框图,说明了各个部分是如何协作起来构成整个linux系统的

1.1.1 linux内核

linux系统的核心是内核。内核控制着计算机系统上的所有硬件和软件。内核基本负责以下四项基本功能:

  • 系统内存管理
  • 软件程序管理
  • 硬件设备管理
  • 文件系统管理
1.1.1.1 系统内存管理

内核管理服务器上的可用物理内存,还可以创建和管理虚拟内存。

  • 交换空间(swap space):内核通过硬盘上的存储空间来实现虚拟内存,这块区域被称为交换空间。
  • 虚拟内存:内核不断地在交换空间和物理内存之间反复交换虚拟内存存储单元中的内容
  • 页面:内存存储单元会被按组分成很多块,这些块被称作页面。内核会将每个内存页面放在物理内存或交换空间。然后,内核会维护一个内存页面表,来指明哪些页面位于物理内存内,哪些页面被换到磁盘上。

内核会记录哪些内存页面正在使用中,并自动把一段时间未访问的内存页面复制到交换空间区域(换出,swapping out)——即使物理内存还有可用内存。当程序要访问一个已被换出的内存页面时,内核必须从物理内存换出另外一个内存页面来给它让出空间,然后从交换空间换入(swapping in)请求的内存页面。

只要linux系统在运行,为运行中的程序换出内存页面的过程就不会停歇

查看/proc/meminfo 文件可以观察linux系统上虚拟内存的当前状态

cat /proc/meminfo

共享内存

默认情况下,运行在Lnux系统上的每个进程都有各自的内存页面,进程不能访问其他进程正在使用的内存页面。内核维护着它自己的内存区域。出于安全考虑,用户进程不能访问内核进程使用的内存。

  • 共享内存页面:为了方便共享数据,可以创建一些共享内存页面。多个进程可在同一块共用内存区域进行读取和写入操作。内核负责维护和管理这块共用内存区域并控制每个进程访问这块共享区域。

可使用以下命令查看系统上的当前共享内存页面


   转载规则


《linux(1)》 fightingtree 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录