logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

迅为嵌入式linux驱动开发笔记(七)—等待&工作队列

等待队列二.等待队列基础知识当我们进程去访问设备的时候,经常需要等待有特定事件发生以后在继续往下运行,这 个时候就需要在驱动里面实现当条件不满足的时候进程休眠,当条件满足的时候在由内核唤醒 进程。 那么等待队列就实现了在事件上的条件等待。<1> 等待队列头 等待队列头就是一个等待队列的头部, 每个访问设备的进程都是一个队列项, 当设备 不可用的时候就要将这些进程对应的等待队列项添加到等

文章图片
#单片机#arm#驱动开发 +1
嵌入式面试常见问题(五)— 牛客网

31、两个进程的内核空间是共享的吗用户空间中,每个进程的用户空间是互相独立的,互不相干。 内核空间中,绝大部分是共享的,并不是完全共享,因为内核空间中,不同进程的内核栈之间是不共享的。之所以使用进程的内核栈而非“用户栈”,是避免用户态下进程被抢占改变引发内核崩溃,因此每个进程在内核中有一个独立的内核栈。32、三次握手为什么ACK信号是SYN信号值+1为什么三次握手过程中,比如第一次握手,A向B发了

#嵌入式#面试
迅为嵌入式linux驱动开发笔记(二)—地址映射与字符设备

一、linux物理地址到虚拟地址的映射linux不能直接对物理地址进行操作,如果需要操作硬件,需要先把物理地址转成虚拟地址,因为linux使能了MMU,所以不能直接操作物理地址。1、使能MMU有什么好处?(1)让虚拟地址成了可能(2)可以让系统更加安全,有了MMU,上层应用看到的内存都是虚拟内存,应用就不能直接访问硬件,这样保证了系统安全。2、MMU非常复杂,如何完成物理地址到虚拟地址的转换呢?内

文章图片
#单片机#arm#驱动开发 +1
嵌入式面试常见问题(十一)—各大公司面试题

8、科大讯飞笔试题笔试时间:2020.09.12,19:00——21:00岗位:嵌入式软件开发题型:四道编程题,4*10=40分1、定义一个n*m矩阵,找到两个不在同一行同一列的数字,使得成绩最大。2、输入一个数N,求数的二进制中1的个数(已AC)//写一个函数返回参数的二进制中1的个数#include<stdio.h>#include<stdlib.h>int count

#面试#数据结构#算法
嵌入式C语言常用知识点

导读C 语言是单片机开发中的必备基础知识。我们这里就列举部分STM32学习中会遇见的C 语言基础知识点1.位操作下面我们先讲解几种位操作符,然后讲解位操作使用技巧。C语言支持如下6中位操作:(图1:六种位操作)下面我们想着重讲解位操作在单片机开发中的一些实用技巧。1,在不改变其他位的值的状况下,对某几个位进行设值。这个场景在单片机开发中经常使用,方法就是先对需要设置的位用&操作符进行清零操

#c语言#单片机#开发语言
嵌入式面试常见问题(十)—各大公司面试题

6、汇顶笔试题笔试时间:2020.08.24,20:00-21:00提醒:很多大公司秋招在七八月份就要投递简历,九月已经晚了。通用部分投的嵌入式软件岗位,给的题目是现场应用工程师(音频)考卷。主要考察硬件,单片机,C语言三方面。1、单片机程序存在哪里(有flash的情况下):DA ROMB RAMC 寄存器D flash2、波特率的单位是什么?答案:bps3、读写寄存器快还是flash快?答案:寄

#面试
迅为嵌入式linux驱动开发笔记(三)— 平台总线模型

一、平台总线模型介绍1、什么是平台总线模型?平台总线模型也叫 platform 总线模型。 是 Linux 内核虚拟出来的一条总线,不是真实的导线。平台总线模型就是把原来的驱动 C 文件给分成了俩个 C 文件,一个是 device.c , 一个是 driver.c 把稳定不变的放在 driver.c 里面,需要变得就放在了 device.c 里面。把共性的放在dirver.c,变的存放在devic

文章图片
#linux#单片机#驱动开发 +1
迅为嵌入式linux驱动开发笔记(一)—杂项设备、应用与内核间数据传输

一、Linux下第一个驱动驱动分为四个部分:头文件驱动模块的入口和出口声明信息功能实现第一步 包含头文件1 #include<linux/init.h> 包含宏定义的头文件2 #include<linux/module.h>包含初始化加载模块的头文件第二步,驱动模块的入口和出口module_init();module_exit();第三步 声明模块拥有开源许可证MODULE

文章图片
#网络#linux#c语言 +2
嵌入式面试常见问题(九)—各大公司面试题

3、锐捷网络笔试题笔试时间:2020.09.24时长:90分钟题目:25道题,全是C语言代码题,问输出结果。总结:时间紧,任务重,硬核。1、#include<stdio.h>char *getstr1(){char s[]="str1"; //static char s[]="str1";return s;}char *getstr2(){char *s="str2";return s

#c语言#算法#c++ +1
迅为嵌入式linux驱动开发笔记(六)— 中断与中断下文

设备树节点以及相关函数一. 设备树中的中断节点。如果一个设备需要用到中断功能, 开发人员就需要在设备树中配置好中断属性信息, 因为 设备树是用来描述硬件信息的, 然后 Linux 内核通过设备树配置的中断属性来配置中断功能。 设备树中断的参考绑定文档:Documentation/devicetree/bindings/arm/gic.txt中断实际上是非常复杂的, 但是作为开发人员, 我们只需要关

文章图片
#linux#c语言#驱动开发 +1
    共 22 条
  • 1
  • 2
  • 3
  • 请选择