面试笔记11(操作系统基础)(需完善)

调度算法

银行家算法

内存管理

shell脚本编程


1.操作系统有四个特征:并发、共享、异步、虚拟。

2.进程是计算机中已运行的实体。通常有五种状态:运行状态、就绪状态、阻塞状态、创建状态、结束状态。

当一个就绪进程获得处理时,就由就绪变成执行。

当一个进程被剥夺处理机时,其运行状态就由运行变成就绪。

当一个进程因事件被阻,所申请的资源被占用、启动I/O传输未完成,其状态由执行变为阻塞。如果获得资源,就会由阻塞变为执行。

3.进程的组成包括程序、数据和进程控制块。

4.创建新进程会创建新的地址空间,子进程是父进程的复制品,在fork之后子进程获得父进程的数据空间、堆和栈的复制品,而进程使用当前的地址空间。

5.printf  加入\n会刷新缓冲区,子进程的就不会得到相应的缓冲区。

6.线程是程序执行流的最小单元。一个标准的线程是由线程ID,当前指令指针,寄存器集合和堆栈组成。线程不拥有系统资源,可以与同一进程的其他线程共享进程所拥有的资源。

7.线程共享的进程环境包括:进程代码段、进程的公有数据(全局变量)、进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户ID与进程组ID

8.线程个性:线程ID、寄存器组的值、线程的堆栈(在一个进程的线程共享堆区)、错误返回码、线程的信号屏蔽码、线程的优先级

9.进程只作为除CPU以外系统资源的分配单位。线程作为处理器的分配单元。

10 进程间的通信要借助操作系统,而线程间就可以直接读/写进程数据段。

11.访问临界资源的那段代码称为临界区。

linux下进程间通信的几种重要手段:

管道、信号、消息队列、共享内存、信号量、套接口(socket)  

12.临界区critical section 只能用来同步本进程内的线程,而不可用来同步多个进程中的线程。

互斥量mutex,信号量semaphore,事件都可以被跨越进程使用来进行同步数据操作。

13临界区是非内核对象,只在用户态进行锁操作,互斥体mutex是内核对象,在核心态进行锁操作,速度慢

14 临界区和互斥体在windows平台下都可以用,linux下只有互斥体可以用。


15.调度算法和银行家算法需要单独复习

16.死锁产生的必要条件

互斥条件

不剥夺条件

请求和保持条件

循环等待条件

17内存管理需要再看。

18.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值