你板子冒烟了
码龄6年
关注
提问 私信
  • 博客:547,849
    社区:2
    问答:100
    动态:11
    547,962
    总访问量
  • 559
    原创
  • 14,992
    排名
  • 1,103
    粉丝
  • 7
    铁粉
  • 学习成就
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:江苏省
  • 加入CSDN时间: 2019-01-31
博客简介:

engineer0的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    6
    当前总分
    2,461
    当月
    4
个人成就
  • 获得666次点赞
  • 内容获得102次评论
  • 获得2,296次收藏
  • 代码片获得1,004次分享
创作历程
  • 34篇
    2024年
  • 34篇
    2023年
  • 16篇
    2022年
  • 398篇
    2021年
  • 83篇
    2020年
成就勋章
TA的专栏
  • 笔记
    42篇
  • linux内核
    15篇
  • audio
  • irq
    6篇
  • gpio
  • usb
    5篇
  • 蓝牙
  • git
  • python
    21篇
  • shell
    5篇
  • 网卡驱动
    7篇
  • pcie
    1篇
  • The C Programming Language
    17篇
  • spec
  • linux
    6篇
  • hwjs
    103篇
  • pci
  • os
  • 野火driver笔记
    55篇
  • 计算机网络
    124篇
  • w
  • ldd阅读心得
    1篇
  • 底软相关
    2篇
  • 汽车基础知识
    2篇
  • 算法&数据结构
    1篇
  • driver
    20篇
  • 数据结构
    58篇
  • 计算机组成原理
    3篇
兴趣领域 设置
  • 嵌入式
    单片机嵌入式硬件
  • 硬件开发
    驱动开发arm开发
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

JJJ:结构体定义中常加的后缀:attribute ((packed))

在GCC下:struct my{ char ch;: 的作用就是告诉编译器取消结构体在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法。这个功能是跟操作系统没关系,跟编译器有关。在GCC下:struct my{ char ch;
原创
发布博客 2024.08.22 ·
289 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

JJJ:linux 内核 hlist 数据结构分析

linux 内核 hlist 数据结构分析
原创
发布博客 2024.08.19 ·
334 阅读 ·
5 点赞 ·
0 评论 ·
8 收藏

JJJ:urb的complete回调流程

1次urb的完成,意味着1次控制传输的完成,可能就是(令牌,data,握手)的3个阶段的完成。块传输和控制传输:process_bulk_intr_td -> finish_td。控制传输:process_ctrl_td -> finish_td。等时传输:process_isoc_td -> finish_td。
原创
发布博客 2024.08.06 ·
469 阅读 ·
5 点赞 ·
0 评论 ·
9 收藏

JJJ:base64编码和字节字符串&普通字符串

在 URL 或文件名中使用 Base64 编码时,通常会使用 URL 和文件名安全的 Base64 编码,其中 “+” 和 “/” 字符被替换成 “-” 和 “_”,并且不使用填充字符 “=”。Base64 编码使用一组64个字符(A-Z,a-z,0-9,+ 和 /,有时最后一字符用 “=” 替换填充空白)来表示二进制数据。前缀的使用是为了明确指出字符串是以字节的形式存在,而非 Unicode 字符,这对于处理二进制数据或在网络层面上操作数据是非常重要的。在需要将字节字符串转换回普通字符串时,可以使用。
原创
发布博客 2024.07.09 ·
618 阅读 ·
14 点赞 ·
0 评论 ·
11 收藏

git制作patch

详解如何使用git 生成patch 和打入patch
原创
发布博客 2024.06.21 ·
131 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

JJJ:rcS脚本是如何被执行到的

parse_inittab 里面会调用 new_init_action(SYSINIT, INIT_SCRIPT, “”),决定了接下去初始化的脚本是INIT_SCRIPT所定义的值。在init_main()函数中会调用parse_inittab(void)函数,parse_inittab(void)函数可以使用一些默认的配置,当/etc/inittab没有配置时。kernel_init执行"/sbin/init",在此程序中,会执行到busybox的init进程入口,init_main.
原创
发布博客 2024.06.04 ·
379 阅读 ·
9 点赞 ·
1 评论 ·
2 收藏

JJJ:linux spi总结

在SPI通信中,主设备通过时钟信号来控制从设备的数据传输,数据的传输是在时钟信号的上升或下降沿进行采样的。在SPI通信中,主设备通过时钟信号来控制从设备的数据传输,时钟信号在传输开始前需要有一个确定的起始状态,时钟极性就是用来指定这个起始状态的电平状态。模式0表示时钟空闲状态为低电平,数据在时钟的下降沿采样,上升沿发送。模式2表示时钟空闲状态为高电平,数据在时钟的下降沿采样,上升沿发送。模式3表示时钟空闲状态为高电平,数据在时钟的上升沿采样,下降沿发送。/ 若采用了这个宏,时钟状态空闲时为高电平。
原创
发布博客 2024.05.20 ·
274 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

MSB LSB,大小端

例如,在8位二进制数01010101中,MSB为0,LSB为1。LSB则表示二进制数的最低位。MSB表示二进制数的最高位。
原创
发布博客 2024.05.20 ·
161 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

JJJ:WARN,WARN_ON,BUG_ON

当满足一些条件时,该函数会输出一条带有调试信息的警告消息,并打印出相应的调用栈信息,以便于开发人员进行调试。不要过度使用,否则会造成系统性能下降。在生产环境中,应该关闭大部分的内核调试功能。
原创
发布博客 2024.05.20 ·
389 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

JJJ:ubuntu修改静态ip

网关一般放置在网络边缘,与不同网络相连。网关会对数据包进行协议格式的解析,然后再构建适合目的网络的协议格式,发送到目的网络中。网关需要具备转换不同协议格式的能力,支持数据缓存、分组、组装、再传输等功能,以保证数据的快速、稳定传输。它可以将一个网络的协议格式转换为另一个网络可识别的协议格式,实现不同网络之间的数据传输。转换网关:是一种将不同网络协议进行转换的网关,其主要作用是将数据包格式转换为目标网络可以识别的格式。应用网关:主要用于应用层协议转换,实现HTTP、SMTP、FTP等应用协议之间的转换。
原创
发布博客 2024.05.20 ·
268 阅读 ·
5 点赞 ·
0 评论 ·
8 收藏

JJJ:给一个shell指令起别名,如让vi指向vim

这个只是一次性(在mobaxterm中的一个窗口中执行,在另一个窗口不会生效),
原创
发布博客 2024.05.16 ·
131 阅读 ·
2 点赞 ·
0 评论 ·
1 收藏

ddr测试&sd卡读写速度测试

注意/dev/zero不产生io,作为读或者写中的一方,可以用来测试纯写或者纯读的速度。time指令可以用来测试其后接指令的执行时间,细节。2、sd卡读速度和写速度测试。
原创
发布博客 2024.05.16 ·
1159 阅读 ·
5 点赞 ·
0 评论 ·
6 收藏

JJJ:桥接转发的代码是如何在接收流程中完成转发的

【代码】JJJ:桥接转发的代码是如何在接收流程中完成转发的。
原创
发布博客 2024.04.13 ·
147 阅读 ·
3 点赞 ·
0 评论 ·
1 收藏

JJJ:netdev_run_todo

由unregister_netdev->rtnl_unlock触发。
原创
发布博客 2024.04.10 ·
303 阅读 ·
3 点赞 ·
0 评论 ·
1 收藏

JJJ:unregister_netdev

【代码】JJJ:unregister_netdev。
原创
发布博客 2024.04.09 ·
147 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

JJJ:rtmsg_ininfo解析

【代码】JJJ:rtmsg_ininfo解析。
原创
发布博客 2024.04.08 ·
162 阅读 ·
2 点赞 ·
0 评论 ·
1 收藏

JJJ:net_device分配:alloc_netdev

【代码】JJJ:net_device分配:alloc_netdev。
原创
发布博客 2024.04.06 ·
127 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

JJJ:网络子系统的软中断

find_task_by_pid_ns用于查找指定命名空间(namespace)下具有指定进程ID(pid)的任务(即进程)结构体。kthreadd_task 是指向内核线程 kthreadd 的进程描述符(task_struct 结构体实例)的一个全局变量。
原创
发布博客 2024.04.05 ·
621 阅读 ·
10 点赞 ·
0 评论 ·
18 收藏

JJJ:linux共享中断

内核接收一个中断后,它将依次调用在该中断线上注册的每一个处理程序。如果与它相关的设备并没有产生中断,那么处理程序应该立即退出。这需要硬件设备提供状态寄存器(或类似机制),以便中断处理程序进行检查。只要有任何一个设备没有按规则进行共享,那么中断线就无法共享了。多个设备共享一个中断号,共享同一中断的各个中断设备的中断处理程序形成一个链表,内核对每个中断处理程序都要执行(有产生中断的设备本该靠边站的,它的中断处理程序也被执行了)。2、该线上的所有已注册处理程序都指定了SA_SHIRQ。1、中断线当前未被注册。
原创
发布博客 2024.04.01 ·
192 阅读 ·
5 点赞 ·
0 评论 ·
1 收藏

JJJ:linux系统中第一个进程

ramdisk_execute_command 变量的值可以通过内核启动参数 rdinit 来设置。在Linux内核引导过程中,如果用户在命令行参数或GRUB等 bootloader配置中指定了类似 rdinit=/path/to/executable 的参数,内核在初始化initrd之后会尝试执行位于指定路径的可执行文件作为初始化脚本或进程。上面代码片中的两个变量:ramdisk_execute_command 和 execute_command。可以看到第一个进程PID为1,拉起第一个进程的指令为。
原创
发布博客 2024.03.31 ·
257 阅读 ·
10 点赞 ·
0 评论 ·
2 收藏
加载更多