您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 2015年3月嵌入式系统开发工程师试题一
一、编程开发能力:1、用预处理指令#define声明一个常数,用以表明一年中有多少秒(忽略闰年问题);写一个“标准”宏MIN函数,这个宏输入两个参数并返回较小的一个。2、用变量a给出下面的定义:(1)一个整型数(Aninteger);(2)一个指向整型数的指针(Apointertoaninteger);(3)一个指向指针的指针,它指向的指针是指向一个整型数(Apointertoapointertoaninteger);(4)一个有10个整型数的数组(Anarrayof10integers);(5)一个有10个指针的数组,该指针是指向一个整型数的(Aarrayof10pointerstointegers);(6)一个指向有10个整型数组的指针(Apointertoanarrayof10integers);(7)一个指向函数的指针,该函数有一个整型参数并返回一个整型数(Apointertoafunctionthattakesanintegerasanargumentreturnsaninteger);(8)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数(Anarrayof10pointerstofunctionsthattakeanintegerargumentandreturnaninteger);3、关键字volatile有什么含义?并举出三个不同的例子。4、嵌入式系统总是要用户对变量或寄存器进行位操作,给定一个整型变量a,写两段代码,第一个设置a的bit3,第二个清除a的bit3,在以上操作中,要保持其他位不变。5、嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点,在某工程中,要去设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器,写代码去完成这一任务。6、中断是嵌入式系统中的重要组成部分,这导致了很多编译开发商提供一种扩展——让标准C支持中断,具有代表性的是,产生一个新的关键字:__interrupt,下面的代码就使用了__interrupt去定义了一个中断子程序(ISR),请评论下这段代码的__interrupt,doublecompute_area(doubleradius){doublearea=PI*radius*radius;printf(\nArea=%f,area);returnarea;}7、尽管不像非嵌入式计算机那样常见,嵌入式系统还是有从堆(heap)中动态分配内存的过程的,那么嵌入式系统中,动态分派内存可能发生的问题是什么?8、关键字static的作用是什么?9、#include与#includefile.h的区别?10、请说出const与#define相比,有何优点?二、嵌入式系统编程:1、进程与线程有什么区别?2、操作系统有哪几个特征?最主要的特征是什么?虚拟存储器有哪几个特征?其最本质的特征是什么?3、库函数的调用和系统调用的区别?4、Linux进程间通行方式有哪几种以及各自的特点?5、Linux中四层网络模型?IP的各种类型的范围?6、在Linux系统中,造成死锁的原因有哪些?7、Linux网络编程中主要使用的API有哪些以及网络服务器模型的种类?8、简述对Linux的认识(特点,优势)。三、嵌入式平台开发1、bootloader是什么?bootloader的stage1和stage2分别做的工作有哪些?2、Linux内核版本命名的规则?3、Linux设备文件有哪几类?4、Linux文件系统的种类有哪些以及使用特点?5、嵌入式系统移植的主要工作步骤是什么?四、编程能力实测1、编写一个C函数,将“Iamfromshanghai”倒置为“shanghaifromamI”即将句子中的单词位置倒置,并不改变单词内部结构。2、请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出。
本文标题:2015年3月嵌入式系统开发工程师试题一
链接地址:https://www.777doc.com/doc-2979932 .html