校园招聘攻略----嵌入式软件工程师基础问题
Posted 鲁棒最小二乘支持向量机
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了校园招聘攻略----嵌入式软件工程师基础问题相关的知识,希望对你有一定的参考价值。
问题41
面试官:
select和epoll的区别?
学生:
- select的
时间复杂度O(n)
。它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能有一个,多个,甚至全部),我们只能无差别轮询所有流,找出能读出数据,或者写入数据的流,对他们进行操作。所以select具有O(n)的无差别轮询复杂度,同时处理的流越多,无差别轮询时间就越长 - epoll的
时间复杂度O(1)
。epoll可以理解为event poll,不同于忙轮询和无差别轮询,epoll会把哪个流发生了怎样的I/O事件通知我们。所以我们说epoll实际上是事件驱动(每个事件关联上fd)的,此时我们对这些流的操作都是有意义的。(复杂度降低到了O(1))
问题42
面试官:
异步IO和同步IO区别?
学生:
- 同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回
- 异步就是过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者
- 异步IO和同步IO区别就是
数据拷贝的时候进程是否阻塞
问题43
面试官:
Linux的进程状态有哪些?
学生:
Linux系统下进程通常存在6种不同的状态
,分为:就绪态、运行态、僵尸态、可中断睡眠状态(浅度睡眠)、不可中断睡眠状态(深度睡眠)以及暂停态
问题44
面试官:
什么是死锁?产生死锁的原因是什么?
学生:
- 死锁,是指多个进程在运行过程中
因争夺资源而造成的一种僵局
,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进 - 死锁产生的原因可归结为两点:1、竞争资源;2、进程间推进顺序非法
问题45
面试官:
死锁的必要条件是什么?
学生:
互斥条件
:进程要求对所分配的资源进行排它性控制,即在一段时间内某资源仅为一进程所占用请求和保持条件
:当进程因请求资源而阻塞时,对已获得的资源保持不放不剥夺条件
:进程已获得的资源在未使用完之前,不能剥夺,只能在使用完时由自己释放环路等待条件
:在发生死锁时,必然存在一个进程–资源的环形链
问题46
面试官:
什么是优先级翻转,如何避免优先级翻转?
学生:
- 优先级翻转指的是一个具有中等优先级的任务比一个更高优先级的任务先执行
- 优先级翻转的主要原因是
对共享资源的访问产生了互斥
,因此我们可以采用带有优先级继承机制的互斥量来避免优先级翻转
问题47
面试官:
Linux驱动程序的功能是什么?
学生:
设备驱动连接操作系统和硬件。设备驱动程序是一种可以使计算机与设备进行通信的特殊程序,可以说相当于硬件的接口
。操作系统只有通过这个接口,才能控制硬件设备的工作。安装在操作系统中的驱动程序可以完成设备的初始化和释放,进行外部数据和操作系统的通信和数据交互,控制硬件的行为,并检查设备可能出现的故障并报错
问题48
面试官:
Linux驱动程序的分类有哪些?
学生:
Linux将硬件设备分为3大类,分别是字符设备、块设备和网络设备
。字符设备是指那些能一个字节一个字节读取数据的设备,如键盘鼠标等,常见的SPI/I2C/UART默认也是字符设备。块设备与字符设备类似,一般是像磁盘一样的设备。网络设备主要负责主机之间的数据交换。与字符设备和块设备完全不同,网络设备主要是面向数据包的接收和发送而设计的
问题49
面试官:
内核程序中申请内存和应用程序时申请内存有什么区别?
学生:
应用程序的内存申请,例如C/C++可以使用malloc函数
,与内核的kmalloc(),kzalloc(), vmalloc(), alloc_page()等函数相比,比较像vmalloc机制,即虚拟地址申请
,物理地址不一定连续,区别在于,应用程序malloc不会做分配物理页的动作,交由内核去申请,而vmalloc本身在内核中会执行这个动作
问题50
面试官:
进程的几个状态及转换条件?
学生:
进程状态包括就绪态,运行态,阻塞态,除此以外还包括新建态和退出态
。 进程首次创建并未参与调度为新建态 从新建态做好准备(初始化成功)等待调度为就绪态 内核调度此进程时,此进程从就绪态转换为运行态 进程执行完内核分配的时间片后,从运行态再次回到就绪态 进程执行时如果等待其他条件满足后才能执行,则进程从运行态转换为阻塞态 阻塞的进程等待的条件满足后,进程重新进入就绪态 进程终止或者异常,进程将进入退出态
希望本文对大家有帮助,上文若有不妥之处,欢迎指正
分享决定高度,学习拉开差距
以上是关于校园招聘攻略----嵌入式软件工程师基础问题的主要内容,如果未能解决你的问题,请参考以下文章