面试题笔记
来源:互联网 发布:数据分析实验室 编辑:程序博客网 时间:2024/06/14 23:15
假定我们有3个程序,每个程序花费80%的时间进行I/O,20%的时间使用CPU。每个程序启动时间和其需要使用进行计算的分钟数如下,不考虑进程切换时间。
程序编号 启动时间 需要CPU时间(分钟)
1 00:00 3.5
2 00:10 2
3 00:15 1.5
问题:请问在多线程/进程环境下,系统的总响应时间是( )。
此题重点考查cpu利用率计算公式:
多道编程时CPU利用率的求法:
只有一个进程的时候,CPU利用率是20%。
两个进程的时候:CPu利用率是:20% + (1-20%)*20% = 36%
三个进程是:36% + (1-36%)*20% = 48.8%
其它的依次类推。
0-10分钟的时候,只有一个进程1在运行。
单进程CPU占有率是20%,所以这10分钟内,进程1消耗了2分钟的CPU。进程2是0,进程3也是0
然后在10-15分钟内,有两个进程在运行(1和2),双进程的CPU利用率是36%,
所以,这五分钟内,CPU一共利用了1.8分钟,平均分给每个进程,是0.9分钟。
此时,进程1已经占用了CPU 2.9分钟,还需要0.6分钟,这时候有三个进程在运行,所有总的CPU时间需要1.8分钟。
三进程的CPU利用率是48.8%,所以总共需要1.8/0.488=3.69分钟。这时,进程1已经3.5分钟的CPu利用时间利用完了。已经运行时间为18.69.
此时还剩下2和3号进程在运行。
2号进程还需要0.5分钟,所以0.5×2/0.36=2.78,此时2号进程的2分钟CPU时间也利用完了。已经运行时间为21.47.
3号进程还需要0.4分钟的CPU利用时间。0.4/0.2 = 2。已经运行时间为23.47 =23.5.
Belady’s Anomaly 出现在哪里( )?
布雷第异常现象(Belady’s anomaly)需求分页(Demand Paging) dynamic linking 。
页置换算法(内存换页算法 )
路由器工作在网络模型中的哪一层( )?
网络层
什么是内存抖动(Thrashing)()?
非常频繁的换页活动
避免死锁的一个著名的算法是()。
银行家算法
怎么理解分配延迟(dispatch lantency)()?
分配器停止一个进程到开启另一个进程的时间
#include <stdio.h>#include <sys/types.h>#include <unistd.h>int main(void){int i;for(i=0; i<2; i++){fork(); //复制父进程,调用一次,返回两次printf("-"); //缓冲区数据}return 0;
创建了两个子进程。
关键1.fock之后的代码父进程和子进程都会运行;
关键2.printf(“-”);语句有buffer,所以,对于上述程序,printf(“-”);把“-”放到了缓存中,并没有真正的输出,在fork的时候,缓存被复制到了子进程空间,所以, 就多了两个,就成了8个,而不是6个。
用printf()输出时是先输出到缓冲区,然后再从缓冲区送到屏幕
上。输出到屏幕的条件:
1. 使用fflush(stdout)强制刷新。
2. 缓冲区已满。
3. scanf()要在缓冲区里取数据时会先将缓冲区刷新。
4. \n,\r进入缓冲区时。
5. 线程结束的时候,如果该线程里也有printf(….);
6. 程序结束时。
在所有非抢占CPU调度算法中,系统平均响应时间最优的是( )。
时间片轮转算法
- 面试题笔记
- 面试题笔记1
- 面试题笔记2
- 面试题笔记3
- 面试题笔记
- Java面试题笔记
- Java笔记--面试题
- 面试题笔记
- 面试题笔记
- java面试题笔记
- Android 面试题笔记
- Java 面试题笔记
- [笔记]Java面试题1
- [笔记]Java面试题2
- 学习笔记 - 面试题Checklist
- spring学习笔记 - 面试题
- java笔记--day08--面试题
- 计算机网络基础面试题笔记
- 在intellij里面导入so包
- 刨根问底:C++中浮点型变量(float, double)的比较问题。
- Entity Framework 实体框架的形成之旅--基于泛型的仓储模式的实体框架(1)
- 欢迎使用CSDN-markdown编辑器
- vi 常用命令行
- 面试题笔记
- IOS 拼装where后的动态字符串
- android不同机型上界面适配问题
- LVS十种调度算法介绍
- 【高效算法设计——滑动窗口】 UVa 12174 Shuffle
- wpf 进度条 ProgressBar的使用
- Sass和Compass的神秘面纱
- DEDE发生Fatal error: Call to a member function read() on a non-object in 错误解决方法
- JSP环境集成包 工具