首页 > 代码库 > 百度笔试准备1

百度笔试准备1

一。数据库以及线程发生死锁的原理及必要条件,以及如何避免死锁

1. 产生死锁的原因主要有,

  (1)因为系统资源不足

  (2)进程运行推进的顺序不合适

  (3)资源分配不当

2. 产生死锁的四个必要条件

  (1)互斥条件:一个资源每次只能被一个进程使用

  (2)请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放

  (3)不可剥夺条件:进程已获得的资源,在未使用完之前,不可强行剥夺

  (4)循环等待条件:若个个进程之间形成一种头尾相接的循环等待资源关系

3. 如何避免死锁:破坏上述四个必要条件之一即可

二。 请列举面向对象涉及的三个基本要素和五种主要设计原则

1. 三个基本要素:继承、封装、多态

2. 主要设计原则:单一职责原则、开放-封闭原则、接口隔离原则、依赖倒置原则、里氏代换原则、迪米特原则。

三。 简述windows内存管理的几种方式及优缺点

windows内存管理方式主要分为:页式管理,段式管理,段页式管理

1. 页式管理:将内存分页,没有外碎片,内碎片不超过页的大小,缺点,增加了机器成本,增加了系统开销

2. 段式管理:把程序按照内容或者过程函数分段,优点。可以分别编写和编译,可以针对不同的段采用不同的宝库。缺点:会产生碎片

3. 段页式管理:将以上两种方式结合,将程序分段,然后再分页进行存储,优点,具有上面两种方式的优点,缺点,复杂性和开销随之增加了,速度有所下降

百度笔试准备1