笔试题(2)

xiaoxiao2021-02-28  95

(2011 阿里) #pragma pack(2) class A{     int i;     union U{         char buff[13];         int i;     }u;     void foo() { }    typedef char *(*f)(void *);     enum{red,green,blue} color; }a; sizeof(a)的值是(22) 函数以及类型重定义不占字节。 #pragma pack(2)使union结构体大小为14; 总的大小是:14+4+4 = 22 malloc/free与new/delete 相同点:都可用于申请动态内存与释放内存 不同之处:malloc与free是c/c++语言的标准库函数,new/delete是c++操作符;                 new自动计算需要分配的空间,而malloc需要手工计算字节数                 new是类型安全的,而malloc不是                 new调用operator new分配足够的空间,并调用相关对象的构造函数,而malloc不能调用构造函数;delete将调用该实例的构造函数,然后调用类的operator delete,以释放该实例占用的空间,而free不能调用析构函数                malloc/free需要库文件支持,new/delete不需要

1.先来先服务调度算法(FCFS:就是按照各个作业进入系统的自然次序来调度作业。这种调度算法的优点是实现简单,公平。其缺点是没有考虑到系统中各种资源的综合使用情况,往往使短作业的用户不满意,因为短作业等待处理的时间可能比实际运行时间长得多。 因此选A

2.短作业优先调度算法 (SPF): 就是优先调度并处理短作业,所谓短是指作业的运行时间短。而在作业未投入运行时,并不能知道它实际的运行时间的长短,因此需要用户在提交作业时同时提交作业运行时间的估计值。  

3.最高响应比优先算法(HRN)FCFS可能造成短作业用户不满,SPF可能使得长作业用户不满,于是提出HRN,选择响应比最高的作业运行。响应比=1+作业等待时间/作业处理时间。 因此选C

4. 基于优先数调度算法(HPF)每一个作业规定一个表示该作业优先级别的整数,当需要将新的作业由输入井调入内存处理时,优先选择优先数最高的作业。

   

 

 

 

<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script> 阅读(217) | 评论(0) | 转发(0) | 0

上一篇:leetcode(2)

下一篇:dwarf程序

相关热门文章 test123编写安全代码——小心有符号数...使用openssl api进行加密解密...一段自己打印自己的c程序...彻底搞定C语言指针详解-完整版... 给主人留下些什么吧!~~ 评论热议
转载请注明原文地址: https://www.6miu.com/read-56633.html

最新回复(0)