Chinaunix首页 | 论坛 | 博客
  • 博客访问: 24950
  • 博文数量: 24
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 10
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-06 10:19
文章分类
文章存档

2015年(17)

2014年(7)

我的朋友

分类: C/C++

2015-04-09 11:03:18

原文地址:大唐电信面试试题 作者:frankzfz

1.什么是中断?中断发生时cpu做什么工作?
   中断是指在计算机执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的时间处理程序。待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。
当外部中断,需要cpu暂停当前的任务,做相应的处理,cpu需要判断中断源,保存现场状态,以便能够处理完后继续执行中断的任务。
改变工作模式至中断模式
保存当前PC,敏感数据入栈
PC被赋值中断起始地址
CPU跳到中断起始地址处理中断
返回到原来模式
恢复PC,数据出栈,程序继续执行。
2.CPU在上电后,进入操作系统的main()之前必须做什么工作?
过程如下:
bios自举:检查硬件等
读取MBR
转到MBR执行它的代码,它会检测活动分区
把活动分区的引导扇区的引导代码装入内存
运行引导代码
引导代码装入该分区的操作系统
也就是进入main()(当然不一定叫main,如linux下叫start_kernel)执行一系列的初始化,然后最终启动登录界面
实现启动过程
3.简述ISO OSI的物理层Layer1,链路层Layer2,网络层Layer3的任务。
物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。
   数据链路可以粗略地理解为数据通道。物理层要为终端设备间的数据 通信提供传输媒体及其连接。媒体是长期的,连接是有生存期的。在连接生存期内,收发两端可以进行不等的一次或多次数据通信。每次通信都要经过建立通信联络 和拆除通信联络两过程。这种建立起来的数据收发关系就叫作数据链路。
   网络层主要功能:路由选择和中继;激活,终止网络连接;在一条数据链路上复用多条网络连接,多采取分时复用技术;差错检测与恢复;排序,流量控制;服务选择;网络管理。
   Layer1:提供网络的物理连接;Layer2:是进行数据封装和数据链接的建立;Layer3解决的是网络与网络之间,即网际的通信问题;
4.有线电话和无线电话有何区别?无线电话特别需要注意的是什么?
  信号传输途径不一样,一种是有形介质,一种是无形的,无线得注意频段和干扰
5.软件开发五个主要step是什么?
   需求分析,设计,编码,调试,测试
6.你在开发软件的时候,这5个step分别占用的时间百分比是多少? 
  25 20 20 10 25
7.makefile文件的作用是什么?
       makefile文件保存了编译器和连接器的参数选项,还表述了所有源文件之间的关系(源代码文件需要的特定的包含文件,可执行文件要求包含的目标文件模 块及库等).创建程序(make程序)首先读取makefile文件,然后再激活编译器,汇编器,资源编译器和连接器以便产生最后的输出,最后输出并生成 的通常是可执行文件.创建程序利用内置的推理规则来激活编译器,以便通过对特定cpp文件的编译来产生特定的obj文件.
    简单一点就是,相当于项目管理文件,并设置编译、优化参数
8.unix显示文件夹中,文件名的命令是什么?能使文件内容显示在屏幕的命令是什么?
ls cat或type
9.(选做)手机用户在从一个基站漫游到另一个基站的过程中,都会发生什么?
       离开当前基站前将自己的位置传输给基站,基站保留位置信息.进入下一基站时,更新位置信息...如果是夸网段则还要关联计费网关或者核心网.
10. 把32位的unsigned int按位倒过来:

unsigned int func(unsigned int nVar);
unsigned int revert(unsigned int num)
{
    int c;
    int n = 0;
    int index = 1;
    for (int i = 1; i <= 32; i++)
    {
       c = num & index;
       n = n | c;
       num = num >> 1;
       if( 32)//只移动31步

       n = n << 1;
       
    }
    return n;
}


阅读(310) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~