嵌入式软件从整体上说出的难度不是很大,但是感觉出的题还是可以区分开纯软件和嵌入式工程师的,不废话,具体题目想不起来了,只能凭记忆回忆一些。
编程基础
第一题目是在64位机上,使用32位编译器来编译,求占用内存的大小;如果使用64位编译器又如何?
struct {
int a;
char c;
unsigned short
b;
char *p;
void(*p)(int);
};好像粗心做错了,尴尬。。。。
第二道题目是container_of宏
第三道题目是反转某一位。
还有两道题目想不起来了。
嵌入式基础知识
1.
描述中断处理过程
2.
列举Linux内核态和用户态间通信的方法,你觉得最有效率的是哪一种??这个题不确定。
总线题目
1.
说出UART、I2C、USB总线的异同(全/半双工、串/并行、速率等)
2.
想不起来了
设计题目
已知一个系统中有两个UART接口,UART0和UART1,UART0是负责接收和回复,UART1是转发。已知有两个字段,一个是命令字段(2字节),一个是数据字段(0~128字节)。
(1)
设计通信数据包格式
(2)
在实时操作系统中,如何设计多个任务和缓存数据,请画出数据流图
(3)
如何设置优先级,说出优缺点
(4)
假如命令字段有高低优先级,重新设计。
没有评论:
发表评论