嵌入式常见面试题面试题三道,你都会了吗

4.用关闭中断/设置本中断优先级最高

5.思路:放在array【1000】中数组的值应该是1,如果有重复就变成2.3.4.。以此类推。

然后根据数组值从k=0到1000,找到和为3400的索引值

这部分还真是啥都不知道,只知道进程间通信的基本方法

1)是否为本地数据包---1;数据长度---7;帧头---1是否校验---1,校验方式---1;

2)任务1:解码;2:发送数据;3:校验;4:数据包序列检验和重组;

3)校验---数据包重组---解码---发送数据



题一: Linux内核里面内存申请有哪几個函数,各自的区别 思考过后,再到下方寻找答案

题二: 内核函数mmap的实现原理机制? 思考过后再到下方寻找答案

题三: 驱动里面为什么要有并发、互斥的控制?如何实现讲个例子? 思考过后再到下方寻找答案

题二答案: mmap函数实现把一个文件映射到一个内存区域,從而我们可以像读写内存一样读写文件他比单纯调用read/write也要快上许多。在某些时候我们可以把内存的内容拷贝到一个文件中实现内存备份当然,也可以把文件的内容映射到内存来恢复某些服务另外,mmap实现共享内存也是其主要应用之一mmap系统调用使得进程之间通过映射同┅个普通文件实现共享内存。

题三答案:并发(concurrency)指的是多个执行单元同时、并行被执行而并发的执行单元对共 享资源(硬件资源和软件上的全局变量、静态变量等)的访问则很容易导致竞态(race conditions)。 解决竞态问题的途径是保证对共享资源的互斥访问所谓互斥访问就是指┅个执行单元 在访问共享资源的时候,其他的执行单元都被禁止访问 访问共享资源的代码区域被称为临界区,临界区需要以某种互斥机 淛加以保护中断屏蔽,原子操作自旋锁,和信号量都是linux设备驱动中可采用的互斥途径

我要回帖

更多关于 嵌入式面试题 的文章

 

随机推荐