须尽欢~~
阿里云开发者社区专家博主、技术博主、星级博主。
座右铭:Stay hungry. Stay foolish.
面包多平台作品网址:https://mbd.pub/o/author-amaWnG5pZA==/work
展开
-
嵌入式面经篇十一——操作系统
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第十一篇。死锁是指多个进程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程将无法向前推进。原因:①系统资源不足。②资源分配不当。③进程推进的顺序不合适。原创 2024-08-21 10:45:36 · 167 阅读 · 0 评论 -
嵌入式面经篇十——驱动开发
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第十篇。原创 2024-08-18 16:24:46 · 1628 阅读 · 0 评论 -
嵌入式面经篇九——网络编程
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第九篇。因为TCP传输的数据满足四大条件:不出错、不丢失、不重复、不乱序,而且拥有窗口机制、拥塞控制机制来提高传输效率。第一,保证客户端发送的最后一个 ACK 报文能够到达服务器,因为这个 ACK 报文可能丢失,服务器等待 2MSL 后,会重新发送连接释放报文。等待 2MSL 保证如果确认报文丢失客户端可以收到重传的连接释放报文,然后再次发送确认报文。第二,使本连接持续的时间内所产生的所有报文段都从网络中消失,不会出现类似“两次握手”的意外情况。原创 2024-08-18 15:44:11 · 841 阅读 · 0 评论 -
嵌入式面经篇八——进程&线程
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第八篇。进程上文:是指进程由用户态切换到内核态时需要保存用户态时CPU寄存器中的值,进程状态以及堆栈上的内容。即保存当前进程的状态,以便再次执行该进程时,能够恢复切换时的状态,继续执行。进程下文:是指切换到内核态后执行的程序,即进程运行在内核空间的部分。中断上文:硬件通过中断触发信号,导致内核调用中断处理程序,进入内核空间。这个过程中,硬件的一些变量和参数也要传递给内核,内核通过这些参数进行中断处理。原创 2024-08-18 10:38:03 · 1451 阅读 · 0 评论 -
嵌入式面经篇七——I/O接口
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第七篇。异步串行方式的特点:以字符为单位传送信息,相邻两个字符间的间隔是任意长;即字符内部各位同步,字符间异步;因为一个字符中的比特位长度有限,所以接收时钟和发送时钟只要相近就可以了。信息发送设备与接收设备之间无时钟连接,信息中可含特殊标志位 start/stop,接收设备根据特殊标志位利用本地时钟对数据采样。举例:UART,无时钟线连接。同步串行方式的特点:以数据块为单位传送信息,在一个数据块内,字符与字符之间无间隔;原创 2024-08-17 17:40:10 · 1150 阅读 · 0 评论 -
嵌入式面经篇六——寄存器与存储器
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第六篇。原创 2024-08-17 14:46:15 · 861 阅读 · 0 评论 -
嵌入式面经篇五——ARM处理器与中断
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第五篇。对于单片机来说,ISR 不能传递参数。对于单片机来说,ISR 不能有返回值。在许多的处理器/编译器中,浮点运算一般都是不可重入的。此外,ISR 应该是短而有效率的,在 ISR 中做浮点运算是不明智的。与第三点一脉相承,printf()经常有重入和性能上的问题。解读:重入一般可以理解为一个函数在同时多次调用,例如操作系统在进程调度过程中,或者单片机、处理器等的中断的时候会发生重入的现象。使用了静态数据结构。原创 2024-08-16 22:02:18 · 1115 阅读 · 0 评论 -
嵌入式面经篇四——内存管理
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第四篇。原创 2024-08-14 20:45:53 · 826 阅读 · 0 评论 -
嵌入式面经篇三——数据类型
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第三篇。一个整型数: int a。一个指向整型数的指针(一重指针): int *a。一个指向指针的的指针,它指向的指针是指向一个整型数的指针(二重指针): int **a。一个有10个整型数的数组 :int a[10]。一个有10个指针的数组,这10个指针是指向整型数的(指针数组): int *a[10]。由于 [] 的优先级高于 *,所以首先是一个数组,然后数组的元素是指向int的指针。原创 2024-08-13 21:48:34 · 997 阅读 · 0 评论 -
嵌入式面经篇二——预处理&关键字
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第二篇。答:宏定义是在编译预处理阶段被处理的。解读:编译预处理:头文件包含、宏替换、条件编译、去除注释、添加行号。原创 2024-08-13 07:07:54 · 1002 阅读 · 0 评论 -
嵌入式面经篇一
记录一些招聘公司在招聘嵌入式软件岗位时的一些问题,此文为第一篇。野指针是指向已释放或无效内存的指针。这类指针的存在可能导致不可预测的程序行为,包括数据损坏、程序崩溃和安全漏洞。野指针通常由以下几种情况产生:释放后未置空:当内存被释放后,如通过 free() 或 delete,指向该内存的指针仍然保留着原来的地址。这种指针称为野指针。由于原内存可能被操作系统重新分配或用于其他用途,通过野指针进行的任何操作都是未定义的,并且可能是危险的。原创 2024-08-11 23:06:39 · 938 阅读 · 0 评论