头像-47865

沃尔夫斯堡的羊

  • 江苏省南京市
  • 单片机 嵌入式 DSP RF/无线 模拟技术 传感器/MEMS
  • 智能硬件

个人成就

获得 102 次赞

帮助过236人

系统编程中,软件锁和硬件锁的区别 嵌入式

如题,在系统编程中,锁机制可以确保线(进)程对资源的同步访问,实现锁机制可以通过软件锁和硬件锁,那么这里的锁 软件锁和硬件锁有什么区别?硬件锁是如何和资源绑定的?任务(申请者)申请锁时又是如何和锁关联的?软件锁又是如何做到的?即申请者  锁  资源三者中,申请者和锁以及锁和资源之间是如何绑定的?

Arm v8A 架构中中断控制器GIC的中断分发 嵌入式

如题,在基于Arm v8A的多核系统中,对于SPI类型的中断,如何配置GIC(Gic500)才能使得多个核响应中断?看GIC手册,好像对于SPI中断虽有两种配置方式/工作方式,但好像只能实现一个核响应?

系统开发中设备树 Device Tree相关问题 嵌入式

在系统开发中,为了抚平伟大的Linus Torvalds的怒气,出现了设备树的概念,Device tree看完资料在这里请教几个问题:1)设备树具体的作用的是啥?用来在系统上电启动过程中挂接设备,初始化设备?那么以后是不是系统每添加一个设备,都可以在其中添加一个节点?设备树能否做到初始化设备,若能还需要编写设备初始化代码么?更进一步,是否可以挂接设备驱动?若是,以后开发驱动流程是不是就清晰很多?2)设备树源文件为.dts,编译后得到.dtb,Bootloader在引导Linux内核的时候会将.dtb地址告知内核,这里的.dtb本质是什么格式的文件,二进制?Bootloader如何识别?

系统启动过程分Boot Loader两个阶段的原因和作用? 嵌入式

如题大概,系统启动过程中,比如计算机X86系统分为Boot和Loader两个过程,由BIOS在启动盘上寻找Boot,再由Boot加载Loader,最后由Loader加载内核,,1) 这个过程为什么会分为Boot和Loader两个步骤?原因何在?2) Boot和Loader的具体作用有什么不同?完成哪些事?3) 也有的是Boot直接加载内核,即BootLoader,这里二者为什么又可以合二为一,这样做需要具备什么条件,启动介质容量够大?还是启动介质的特点(寻址)?

架构和操作系统的区别 嵌入式

​在系统编程中经常会涉及到两个概念架构和操作系统,架构亦即指令集,如X86和Arm,操作系统如WindowsLinux以及其它嵌入式操作系统,这里请教一下,架构和操作系统的区别?比如Linux既能在X86上跑,也能在Arm上跑,这两者之间的区别是啥?是不是在实现Linux内核时需要裁剪(根据对应架构结构和组成只实现对应架构平台具有的模块,如外设驱动)?除去操作系统,通过汇编也能在相应架构的平台上实现软件功能,操作系统和架构之间有没有耦合的地方?

X86_64架构,ICC编译选项 mon-red-zon是啥 嵌入式

如题,在X86_64架构中,ICC工具链编译选项 mon-red-zo​ne是什么意思?有哪位大神指点一下?好像是和X86_64架构中函数调用堆栈的使用有关?在使用makefile编译过程中,不加此选项时,elf文件加载运行起来一会儿就会死在某个地方,加了之后就不会出现此种状况,可以正常跑起来。。。

单片机编程中,硬件对应的描述结构体是如何和具体硬件对应的 STM32

如题,在单片机中如STM32编程中,对硬件的编程是对硬件相关寄存器的操作,如初始化GPIO口GPIO_Init(GPIO_TypeDef* GPIOx GPIO_InitTypeDef* GPIO_InitStruct),GPIO_Init(GPIOA &GPIO_InitStruct);中是怎么确定其指定的结构体GPIOA对应的就是硬件GPIOA口?是在某个头文件中已经定义了各硬件符号和内存编址(包括寄存器编址)的关系?如果设计,厂家是怎么弄的?

原子操作是针对硬件(处理器)还是软件(多线(进)程)? 嵌入式

如题,在某本书中看到关于介绍 原子操作的说明有这样一句话“在单处理器系统中,永远都不会发生内存总线窃用的情况”,这说明单处理器从内存中读取数据、更新数据并把更新后的数据写回到内存中这样的“读-修改-写”的操作是原子的,可是又记得多线程中也介绍原子操作,是针对多线程而言,,,那么,单处理器中如果存在多线程应用,对同一个内存位置进行操作(不是原子操作),这与前面关于单处理器内存读修改写的操作是原子的,会不会有冲突?线程同步也会形成原子操作,,亦或原子操作是针对多处理器还是多线程?