[读书笔记]程序员的自我修养--简述

1、硬件结构框架

CECE0792-C6A6-45C2-A6B4-7EDF1A98A7A2.png

南桥 — 低速总线

北桥 — 高速总线

2、SMP对称多处理器

3、计算机软件体系结构

9FC6D49B-1225-4A38-ABE0-F5A9B8AEE38E.png

Runtime Library:运行库,在linux上目前使用 glibc.so vdso?

运行库使用系统调用system call从用户态切换到内核态 中断 0x80

4、Operation System

设备驱动 — 万物皆文件

虚拟内存 map 物理内存 分页

D91F77E2-3B1F-40B1-95E2-0E79A242108B.png

一个进程有一个虚拟内存空间 Virtual Space

物理页面(页帧)映射到虚拟内存页面,进程在运行时逻辑上操作的是虚拟页面,实际上操作的时物理页面

当缺页的时候,触发页面置换,将Disk Swap分区中的页面装载入物理内存,并映射到进程虚拟内存页面上

5、线程

LWP LightWeight Process 轻量级进程

线程访问权限 LTS数据

线程调度与优先级, 状态机

可抢占线程和不可抢占线程,内核线程可不可以抢占?

fork 写时复制, exec 装载

线程安全 (互斥锁 条件变量? 可重入函数 )

volatile

线程模型(1V1 多V1 多V多)

内核级线程、轻量级线程、用户线程 [https://blog.csdn.net/gatieme/article/details/51481863]

你可能感兴趣的:([读书笔记]程序员的自我修养--简述)