操作系统常用解答

160 阅读1分钟

1、同步|异步 阻塞|非阻塞区别

io操作可以分两部分:io请求和io读写操作

阻塞对应io请求,若不能实时返回,则意味着被阻塞了

异步对应io读写操作,若收到请求后,io操作由操作系统完成,则意味着异步了

2、进程间通信(IPC)

1:匿名管道和有名管道

2:消息队列

3:共享内存+信号量(pv操作)

4:信号

5:socket

3、信号量与锁的关系

信号量:m个进程抢n把锁

锁:多个进程抢一把锁

锁是信号量的一种特殊表示

4、进程间通信与线程同步关系

进程间通信线程同步本质都是消息的传递

线程除自身栈其余资源共享,考虑到资源互斥问题,消息传递时更复杂(加锁之类),故线程的消息传递有了特殊的概念线程同步

5、线程同步

1:信号量 2:互斥量(互斥锁) 3:读写锁 4:信号量

6、常见内存淘汰策略

1:FIFO

2:LRU(Least Recently Used)

3:LFU(Least Frequently Used)

4:2Q(FIFO+LRU)