新产业生物 嵌入式 面经
8月28投递
9月1面试
自我介绍
简述一下STM32或者说ARM Cortex内核的Systick
Systick属于内核外设,提供系统时钟,通过外部或者内部,然后锁相环电路得到的,还有相应的中断balabala……
学习FreeRTOS学习了多久
半年,后来还上了操作系统的课程,通过了考试
介绍一下常用的调度算法
时间片轮转,优先级+时间片轮转,先来先服务,最短时间优先等等,举例说明了一下Linux和RTOS的
FreeRTOS的优先级是怎么实现的
一个数组,里面放了不同优先级的环形双向链表的头指针,由上往下依次遍历,优先级越高的任务数组的下标越高,阻塞队列根据阻塞的时间排序在各自优先级的链表,就绪队列也一样
介绍一下FreeRTOS内核的PendSV与SVC中断分别有什么作用
pend是关于优先级的中断,系统级别的中断,SVC是软件中断,程序员自己写在哪就在哪,例如vtaskYIELD或者vtaskDelay函数里面就有调用SVC
指针用得多吗,介绍一下你在项目中用的指针实例
讲了一个消息队列里面存放数组的例子,用于存放一个六轴传感器的数据,为了能够明确分割,用了指针来管理数组在任务之间的数据通信
介绍一下数组指针和指针数组
经典八股
介绍一下函数指针和指针函数
指针函数知道,但是不太知道函数指针,如实说了,只知道每个函数都有一个入口地址,可能和指针有关
介绍一下回调函数
没了解过内部原理,只是用过中断回调函数,之前师兄叫我去了解过,但是没去看,亏了
还有一些经典问题,忘记了,和STM32有关
反问
介绍公司情况与谈了大致的薪资待遇
9月6日
offer
总的来说,这家公司比较看重操作系统的底层原理和编程基础,如果自己对操作系统内核比较熟悉,可以去试一下,如果光是用过,可能会比较难,当时投递的时候沟通就已经了解了一下操作系统的水平才发的面试,感觉待遇还可以