操作系统相关

1.进程间的通信方式(IPC) ? 进程调度方法?
1.共享内存
可以说这是最有用的进程间通信方式。 它使得多个进程可以访问同一块内存空间, 不同进程可以及时看到对方进程中对共享内存中数据得更新。 这种方式需要依靠某种同步操作, 如互斥锁和信号量等。

2.消息队列
“消息队列” 是在消息的传输过程中保存消息的容器。 具有写权限得进程可以按照一定得规则向消息队列中添加新信息; 对消息队列有读权限得进程则可以从消息队列中读取信息。

3.信号
信号是一种比较复杂的通信方式, 用于通知接收进程某个事件已经发生。

4.信号量
信号量是一个计数器, 可以用来控制多个进程对共享资源的访问。 它常作为一种锁机制, 防止某进程正在访问共享资源时, 其他进程也访问该资源。 因此, 主要作为进程间以及同一进程内不同线程之间的同步手段。

5.套接字
这是一种更为一般得进程间通信机制, 它可用于网络中不同机器之间的进程间通信, 应用非常广泛。

6.普通管道
普通管道是一种半双工的通信方式, 数据只能单向流动, 而且只能在具有父子关系的进程间使用。

7.有名管道
有名管道也是半双工的通信方式, 但是它允许无亲缘关系进程间的通信。

进程调度方法:
1.先来先服务调度算法。
2.短作业(进程) 优先调度算法。
3. 优先权调度算法。
4. 高响应比优先调度算法。
5.基于时间片的轮转调度算法。
6.多级反馈队列调度算法。

2.线程间通信的方式?
锁机制: 包括互斥锁、 条件变量、 读写锁

*互斥锁提供了以排他方式防止数据结构被并发修改的方法。

*读写锁允许多个线程同时读共享数据, 而对写操作是互斥的。

信号量机制(Semaphore): 包括无名线程信号量和命名线程信号量。

3.选择一个你熟悉的磁盘臂调度算法进行简单描述。
1.先来先服务
2.最短寻道时间优先
3.SCAN 算法
4.CSCAN 算法

4.进程和线程的区别?
(1)调度: 线程作为调度和分配的基本单位, 进程作为拥有资源的基本单位 。

(2)并发性: 不仅进程之间可以并发执行, 同一个进程的多个线程之间也可并发执行。

(3)拥有资源: 进程是拥有资源的一个独立单位, 线程自己基本上不拥有系统资源, 只拥有一点在运行中必不可少的资源(如程序计数器、 一组寄存器和栈) , 但是它可以与同属一个进程的其他线程共享进程所拥有的全部资源。 进程之间是不能共享地址空间的, 而线程是共享着所在进程的地址空间的。

(4)系统开销: 在创建或撤消进程时, 由于系统都要为之分配和回收资源,导致系统的开销明显大于创建或撤消线程时的开销。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值