程序员的自我修养——读书笔记

本文介绍了计算机系统的架构和发展历程,涵盖了MOP、SMP等编程概念,以及CPU、内存、I/O等核心组件的工作原理。此外,还探讨了系统调用、进程通信等多种操作系统层面的技术。

1.MOP: Market/Money Oriented Programming

2.John R. Levine  《Linkers & Loaders》

3.CPU、Memory、I/O 是计算机的核心

4.频率: 系统总线的频率和内存的频率一样

           而CPU则采用倍频方式与系统总线通信

5.北桥、南桥:20世纪90时代,北桥采用PCI结构

                                           南桥采用ISA结构

    PCI:Peripheral Component Interconnect

    ISA:Industrial Standard Architecture

6.SMP:对称多处理器(Symmetrical Multi-Processing)

7.多核处理器 Multi-Core Processor

8.系统调用:系统调用采用软件中断实现

                    Linux  0x80

                    Windows 0x2E

9.计算机发展

    多道程序==>分时系统==>多任务系统

    Multi-Porgramming ==> Time-Sharing ==> Multi-Task

10.抢占式(Preemptive)

        允许将逻辑上可继续运行的程序在运行过程中暂停的调度方式

    非抢占式

        让程序继续运行直到结束或阻塞

11.LBA: Logical Block Address

12.IDE接口:有两个通道:IDE0, IDE1,每个通道可接两个设备Master,Slave

?    ?    ?    ?    ?   一台PC最多有4个IDE设备

13.Page:虚拟页(Virtual Page),物理页(Physical Page),磁盘页(Disk Page)

14.MMU:Memroy Managment Unit 虚拟地址转换

15.Fork 并不复制原任务的内存空间,而是采用Copy On Write, 见P23

?     COW:Copy On Write, 即当有一方需要修改共享内存时,才复制一份出来单独使用

16.fork exec 通常用于产生新的任务

?    clone通常用于产生新的线程

17.进程通信方式:

?    ?    管道(Pipe)?    速度慢,容量有限,只能父进程与子进程通信

?    ?    FIFO?    ?    ?    任何进程都可以通信,但速度慢

?    ?    消息队列?    ?   容量受到系统限制,且要注意第一次读的时候,要考虑上一次没有读完数据的问题

?    ?    信号量?    ?    ?  不能传递复杂消息,只能用来同步

?    ?    共享内存区    能够很容易控制容量,速度快,但要保持同步,比如一个进程在写的时候,

?    ?    ?    ?    ?    ?    ?    另一个进程要注意读写的问题,相当于线程中的线程安全,当然,

?    ?    ?    ?    ?    ?    ?    ?共享内存区同样可以用作线程间通讯,不过没这个必要,

?    ?    ?    ?    ?    ?    ?    线程间本来就已经共享了同一进程内的一块内存

?    ?    套接字(Socket)

 ?   线程同步方式:

?    ?    信号量?    Semaphore

?    ?    互斥体?    Mutex

?    ?    临界区?    Critical Section

18.可重入函数(Reentrant)

 

?    ?    

?    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值