操作系统:
管理计算机硬件和软件资源的计算机程序。
内核:
操作系统的核心,是应用程序连接硬件设备的桥梁。
CPU 可以在两种状态下运行:用户态和内核态,在用户态下运行时,CPU 只能访问用户空间的内存;在内核态运行时,CPU 既能访问用户空间也能访问内核空间。
库函数:
把函数放到库里,供别人使用的一种方式。方法是把一些常用到的函数编完放到一个文件里,供不同的人进行调用。调用的时候把它所在的文件名用#include<>加到里面就可以了。一般是放到 lib 文件里。
系统调用:
内核的入口,用户程序只在用户态下运行,如果需要进入内核空间,就需要通过系统调用,当应用程序使用系统调用时,会产生一个中断,CPU中断当前执行的用户程序,跳转到中断处理程序,也就是开始执行内核程序。内核处理完成后,主动触发中断把 CPU 执行权限交回给用户程序。
【补充】man手册:
- man手册安装:
sudo apt-get install manpages-dev
sudo apt-get install glibc-doc
sudo apt-get install manpages-posix
sudo apt-get install manpages-posix-dev
- 使用man手册
man 章节号码(数字) 要查询的
章节:1--可执行的shell命令
2--系统调用
3--库函数
程序和进程
程序
使用编程语言编写的代码经过编译和链接处理,得到的计算机可以理解和执行的指令。
进程
进程是正在执行程序的实例,是操作系统进行资源分配和调度的基本单位。
虚拟内存
进程中只能访问虚拟内存地址,操作系统会把虚拟内存地址翻译成真实的内存地址。这种内存管理方式,称为虚拟内存。
进程如果访问的是真实的物理地址,多个进程之间会互相干扰。例如一个程序在一个物理
地址上写入了一个新值,可能将另一个程序在这个位置的内容擦掉,程序就会崩溃。操作系统为每个进程分配一套独立的虚拟地址,每个进程访问自己的虚拟地址,互不干涉,操作系统会提供将虚拟内存地址和物理内存地址映射的机制。
并发
(假设我们的计算机只有一个CPU,一个核心)并发是一个时间段中有多个进程都处于已启动运行到运行完毕之间的状态。但任意一个时刻点上只有一个进程在运行。
详细的Linux相关安装教程请关注下方公众号,回复关键字获取: