笔试题(2)

来源:互联网 发布:魔兽世界掉落数据库 编辑:程序博客网 时间:2024/06/11 22:50
(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语言指针详解-完整版...
给主人留下些什么吧!~~
原创粉丝点击