嵌入式LINUX试题

2019-07-12 18:10发布

嵌入式LINUX试题 1、你平常是怎么用C写嵌入式系统的死循环的?     2、解释signal函数原型的含义: typedef void (*sighandler_t)(int); sighandler_t signal(int signum, sighandler_t handler);       4volatile有什么含意       5分析代码: int main(){  pid_t  pid1,pid2;    if((pid1=fork()) = = 0){    sleep(3);    printf(“info1 from child process_1/n”);    exit(0);    printf(“info2 from child process_1/n”); } else{   if((pid2=fork()) = = 0){      sleep(1);      printf(“info1 from child process_2/n”);      exit(0);   }   else{      wait(NULL);      wait(NULL);      printf(“info1 from parent process/n”);      printf(“info2 from parent process”);      _exit(0);   } }  输出结果为:_________________________________________________   6、写一条命令,实现在/dir下找出所有包含“hello world”字符串的文件。     7fork()的返回值不可能是(  )    [A] -1       [B] 0       [C] 1      [D] 大于10000的正整数    [E] 取决于具体实现   8、假设程序creatfile的所有者是foo且被设置了设置用户ID,该程序用来创建文件abc,请讨论当以用户bar执行程序时所创建的文件abc的用户ID和用户组ID       9、对于标准IO流应如何使用fsync函数?为什么?     10、下面的两段程序中,循环能否执行?为什么? A: unsigned short i; unsigned short index = 0; for(i = 0; i {     printf(“a/n”); }         B: unsigned short i; unsigned long index = 0; for(i = 0; i {
printf(“b/n”);
}       11      试简述LINUX驱动中字符设备和块设备的区别?           12、请从网卡、USB HOSTLCD驱动器、NAND FLASHWIFI 、音频芯片中选择一个或者2个(可以以具体的芯片为例),对下面的问题做答: 1. 假设LINUX内核中有相应设备驱动程序,内核是怎么识别它的?             2. 编写相应LINUX驱动的流程?