logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

华为鸿蒙微内核与Linux内核到底有何不同?单片机开发进阶必看

这不仅可以向内核添加硬件功能,还可以包括运行服务器进程的模块,比如低级别虚拟化,但也可以替换整个内核,而不需要在某些情况下重启计算机。内核并不神奇,但对于任何正常运行的计算机来说,它都是必不可少的。有一段时间,Linux内核被称为vmlinux,但是内核变得太大,无法装入可用的引导内存,因此压缩了内核映像,并将末尾的x更改为z,以显示它是用zlib压缩的。本文主要讲解什么是Linux内核,以及通过

#harmonyos#linux#华为 +2
嵌入式C的GOTO语句陷阱:为什么Linux内核用它,你却要慎用?

也有不少人为GOTO语句辩护,他们认为只要加以限制地使用GOTO语句不会导致低质量的代码,并且在许多编程语言中,一些功能难以在不使用GOTO语句的情况下实现。使用goto语句在同一函数内进行goto时,goto的起点应是函数内一段小功能的结束处,goto的目的label处应是函数内另外一段小功能的开始处。在这里,你能读到星球专栏的干货,优质教程,练手项目,随时向麦鸽提问,还能帮你定制学习计划。不能

#c语言#linux#算法 +2
STM32偷师Linux内核!单片机启动代码竟能这样写?

代码的组织,如图片需要知道变量a,b及函数指针 f,f2是存放在程序的哪些段中,可以去看一下这篇stm32 启动代码 实现|C语言,上述的a,f都是存放在bss 段中,b,f2是存放在data段中,因为已经给定了初始值,而实现这个intcall会把需要自动初始化的数据放到一个自定义的段中去,如.initcall。那么如何来调用这个函数了,和之前的初始化data段数据类似,遍历这个段,然后取出这个函

#单片机#stm32#linux +1
吐血整理的万字Linux内核源码规范

从编码风格错误开始快速修改编码风格的工具scripts/checkpatch.plscripts/LindentastyleLinux 内核代码风格1 缩进2 把长的行和字符串打散3 大括...

#java#linux
Linux内核驱动学习(一)编写最简单Linux内核模块HelloWorld

文章目录准备工作什么是内核模块编写 hello.c模块编译相关指令测试结果模块加载模块卸载准备工作在进行以下操作前,首先我准备了一台电脑,并且安装了虚拟机,系统是Ubuntu16.04。如果是开发板,那么需要安装交叉编译器,但是目前我只在虚拟机的Ubuntu16.04系统里完成驱动模块的加载和卸载,实现了一个最最简单的驱动模块,并且通过这个最简单的驱动,学习最基本的概念。什么是内核模块模块...

Linux内核驱动学习(三)字符型设备驱动之初体验

Linux字符型设备驱动之初体验文章目录Linux字符型设备驱动之初体验前言框架字符型设备程序实现cdevkobjownerfile_operationsdev_t设备注册过程申请设备号注册设备register_device如何构建模块编译内核编译MakefileKconfig总结参考前言驱动总共分为字符型设备驱动,块设备驱动,网络设备驱动。对于字符型设备驱动的资料,网上比较多,《Linux...

Linux内核驱动学习(七)应用层直接操作GPIO

文章目录简介原理图节点设置为输出设置为输入映射关系简介前面通过libgpio的方式介绍了内核空间对GPIO进行操作的接口,其做了较好的封装,同时Linux系统的sysfs机制已经在系统路径下/sys/class/gpio注册了相应的节点,通过读写该节点下的文件就能轻松的完成GPIO输入输出配置以及引脚状态的获取。原理图我使用的Rockchip的px30,引脚是GPIO3_D0,具体硬件肯定...

Linux内核驱动学习(四)Platform设备驱动模型

Linux platform设备驱动模型文章目录Linux platform设备驱动模型前言框架设备与驱动的分离设备(device)驱动(driver)匹配(match)参考前言为什么要往平台设备驱动迁移?这里需要引入设备,总线,驱动这三个概念。上一篇字符型设备驱动的实现实际将设备和驱动集成到同一个文件中实现,如果这里有硬件A的驱动,硬件B的驱动,硬件C的驱动,然后有三类用户接口E,接口F和...

#linux
Linux内核驱动学习(二)添加自定义菜单到内核源码menuconfig

文章目录目标drivers/Kconfigdemo下的Kconfig 和 MakefileKconfigMakefiledemo_gpio.c目标Kernel:Linux 4.4我编写一个简单的hello worldLinux 内核模块后,已经可以通过inmod动态加载到系统内核中,并通过rmmod卸载模块。但是出于学习的目的,我想把这个内核添加到Linux源码中,并且可以通过Kconfig...

#linux
Linux内核驱动学习(五)KThread学习总结

文章目录简介例程运行结果参考简介使用内核线程需要包含头文件#include <linux/kthread.h>,下面整理了一下常用的api接口,如下表格所示;函数功能struct task_struct * kthread_create(threadfn, data, namefmt, arg...)创建一个线程struct task_struct *...

#linux
    共 182 条
  • 1
  • 2
  • 3
  • 19
  • 请选择