1、 专业的嵌式技术推广 、培训、认证机构 ID: AKAE-EDU-06003亚嵌教育嵌入式 linux 方向职业培训入学测试(第 4 期)学员信息姓 名性 别出生日期学 历毕业院校专 业工作单位职 务联系电话通信地址E-mail答卷时间专业的嵌式技术推广 、培训、认证机构 ID: AKAE-EDU-06003注:答卷后请将试卷及程序等 MAIL 到亚嵌教育教学部,mail: educationakaedu.org专业的嵌式技术推广 、培训、认证机构 ID: AKAE-EDU-06003操作系统部分:题 1:简述计算机上电后的软件启动过程。题 2:堆、栈是操作系统运行时的数据存储结构,请写出堆、
2、栈各自的作用.题 3:请写出进程和线程的异同。题 4:请写出你对计算机中断操作的认识,并结合中断向量表、中断屏蔽位、中断处理子程序这几个概念谈谈一次中断发生后,计算机软硬件的响应过程。题 5:一般程序在处理 I/O 请求时,通常有 3 种方式:忙等待方式、中断方式和 DMA 方式,请写出这 3 种方式下,程序的执行效率和操作系统起到的作用之间的联系。计算机组成原理部分:专业的嵌式技术推广 、培训、认证机构 ID: AKAE-EDU-06003题 6:计算机硬件系统通常由哪几类硬件组成?各自的作用是什么?题 7:请写出常见的三种计算机内部存储器件:硬盘,内存和寄存器,它们之间在功能上和性能上有何
3、差异。 题 8:简述 MMU 的作用。题 9:CPU 按照指令集架构的不同可以分成那几类?各有什么特点?,并举例说明每种架构 CPU 的典型代表。题 10:请以你熟悉的某个处理器为例,划出处理器的流水线的各个工作阶段(注明是几级流水线) 。专业的嵌式技术推广 、培训、认证机构 ID: AKAE-EDU-06003C 语言部分:题 1:unsigned long i; /* unsigned long 类型为 4 字节*/char c1=0xa4;char c2=0x31;i = c28 | c1;问:i = (用 16 进制格式) 如果:unsigned long i; /* unsigned
4、 long 类型为 4 字节*/char c1=0x74;char c2=0x31;i = c28 | c1;问:i = (用 16 进制格式)题 2:unsigned char ch0 = 0x81;char ch1 = 0x80;int i;i = ch1 ch0;请问: i = (用 16 进制格式)题 3请自己写一个函数, 实现小写字母字符到大写字母字符的转换,如果输入参数已经是大写字母字符,则直接返回该大写字母字符,如果输入参数不是大小写字母字符,返回值0。char upper(char ch)题 4请自己写一个字符串拷贝函数,能实现将一个字符串拷贝到另一个字符串。专业的嵌式技术推广
5、 、培训、认证机构 ID: AKAE-EDU-06003题 5:请描述 static 修饰符在 C 语言中的用法和作用题 6:int foo()int a = 0xa;static int count 1; count = 1;return (count + a);int main()printf(“i = %dn”,foo();printf(“j = %dn”,foo()+foo();printf(“k = %dn”,foo();请问输出:i = j = k= 题 7:请写出 C 语言中宏定义的优点专业的嵌式技术推广 、培训、认证机构 ID: AKAE-EDU-06003题 8:请写一个简单
6、的测试程序,判别内存存储规范是 Big Endian 还是 Little Endian。题 9:假定运行平台具有 32 位地址空间char *pstr = “hello!”;char str = “world!”; struct mystructint i;char ch;union myunionint i;char ch;问:sizof(str) = sizeof(pstr) = sizeof(*pstr) = sizeof(mystruct) = sizeof(myunion) = 题 10: 请说出如下变量声明的含义int a10;int *a10;int (*a)10;int* (*a)10;int* (*a)(int);int (*a10)(int);const volatile int *a = (const volatile int *)0xfff8;专业的嵌式技术推广 、培训、认证机构 ID: AKAE-EDU-06003C 语言编程部分: (请将 C 语言源文件、可执行文件、测试用例一起提交)题 1:请编写一个能够将 C 语言源文件中注释都去掉的程序并设计测试用例。