操作系统面试题(更新中。。)
来源:互联网 发布:dm 数据挖掘 编辑:程序博客网 时间:2024/05/16 17:27
1. 什么是死锁?
如果在一个进程集合中,每个进程都在等待只能由该集合中的其他进程才能引发的事件,而无限期陷入僵持的局面成为死锁。
即一组进程中,如果每个进程都获得了部分资源,还想要得到其他进程所占用的资源,最终所有的进程都将陷入死锁。
2. 产生死锁的4个必要条件
- 互斥条件:进程互斥使用资源
- 占有和等待条件(部分分配条件):申请新资源得不到满足而等待时,不释放已占有资源。
- 不剥夺条件:一个进程不能抢夺其他进程占有的资源。
- 循环等待条件(环路条件):存在一组进程循环等待资源的现象。
死锁的避免:只要破坏以上四个条件之一就可以了。
3. 进程和线程的区别是什么?
- 进程是执行着的应用程序
- 线程是进程内部的一个执行序列
- 一个进程可以有多个线程
- 线程又叫轻量级进程
4. 如何确保N个线程可以访问N个资源同时又不导致死锁?
使用多线程,简单的避免死锁的方法是:指定获取锁的顺序,并强制线程按照指定的顺序获取锁。因此,如果所有的线程都是以同样的顺序加锁和释放锁,就不会出现死锁了。
5.
0 0
- 操作系统面试题(更新中。。)
- 操作系统面试题汇总(持续更新)
- 面试题整理(更新中)
- 面试题汇集(更新中)
- java面试题总结(更新中)
- JAVA 面试题(更新中。。)
- 数据库面试题(更新中。。。)
- 数据结构面试题(更新中。。。)
- php面试题总结(更新中。。。)
- 一些面试题(更新中)
- php---面试题---更新中
- 操作系统面试题(一)
- 操作系统面试题(二)
- 操作系统面试题(三)
- 《操作系统》原理笔(面)试题目总结--不定时更新
- 《操作系统》原理笔(面)试题目总结--不定时更新
- java面试笔试题汇总一(持续更新中)
- C语言常见经典面试题集锦(更新中)
- 回溯法与分支限界法
- QT 让生成文件更干净
- FastJson最新.jar下载
- 文章标题
- 图像分割之边缘检测
- 操作系统面试题(更新中。。)
- 设计模式之Value Object模式
- 平台从网页登陆需要写入的注册表项
- 字符串中的部分字符替换
- sql语句中count(*),count(1),count(id)区别详解
- 数据库位图索引的优缺点
- 双三次插值算法的OpenGL实现
- php标准的注释方法
- javascript之DOM操作