Skip to content

Latest commit

 

History

History
38 lines (30 loc) · 1.94 KB

操作系统.md

File metadata and controls

38 lines (30 loc) · 1.94 KB

操作系统

1. 进程间通信有哪几种方式?(主要分为4种)

  1. 消息传递(管道、FIFO、消息队列)
  2. 同步(互斥量、条件变量、读写锁、文件和写记录锁、信号量)
  3. 共享内存(匿名的和具名的)
  4. 远程过程协调(Solaries门和Sun RPC)

2.进程和线程的区别?

进程好比一个车间,线程好比车间里面的工人

  1. 不同的进程地址空间是独立的,而同一个进程内的线程共享同一地址的空间。
  2. 进程是资源分配和调度的单位,线程是基本调度单位
  3. 资源是分配给进程的,线程只拥有很少资源

3. 同一进程下面线程可以共享什么?

  • 共享: 进程代码段、进程的公有数据、进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户ID与进程组ID
  • 不共享: 线程ID、寄存器组的值、线程的堆栈、错误返回码、线程的信号屏蔽码

3. 死锁发生的条件(4个)

  1. 互斥:一个资源每次只能被一个进程使用
  2. 不可抢占:进程已获得的资源,在未使用完成之前,不能强行剥夺
  3. 占有并等待:一个进程因请求资源而阻塞时,对已经获得的资源保持不放
  4. 环形等待:若干个进程之间形成一种首尾相接的循环等待资源关系

4. 操作系统如何进行分页调度?

11. Linux下常用命令

ls|cd|mkdir|rmdir|rm|cp|man|less|>>|chmod|sudo|apt get install

  • top :查看进程,包括堆栈信息,内存占有率等
  • ps -aux :

12. Linux下如何进行进程调度的?

  • 进程提供了两种优先级,一种是普通的进程优先级,第二种是实时优先级
  • 任何时候实时优先级都高于普通进程,实时进程只会被更高级的实时进程抢占。同级的进程之间按照FIFO,RR规则调度
  • 普通进程根据动态优先级进行调度,动态优先级是由静态优先级(static_prio)调整而来。