E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
内核编程
【Linux内核及
内核编程
】Linux下的C编程特点
在Linux世界里,C语言始终是核心编程语言之一。Linux内核及大量系统工具都基于C语言开发,这使得Linux环境下的C编程形成了一套独特的规范和特性。目录一、Linux编程风格:简洁实用的工程美学1.1命名规范:下划线的统治1.2缩进与括号:K&R风格的坚守1.3注释哲学:关键逻辑的精准描述二、GNUCvsANSIC:扩展特性的力量2.1语句表达式:让宏更强大2.2可变参数宏:灵活的接口设计2
byte轻骑兵
·
2025-07-08 12:20
#
嵌入式Linux驱动开发实战
linux
运维
服务器
【Linux内核及
内核编程
】Linux 内核的发展与演变:从 UNIX 到开源帝国的崛起
1969年,贝尔实验室的肯·汤普森和丹尼斯·里奇在报废的DECPDP-7小型机上开发了一个“太空旅行”游戏。为简化开发,他们用汇编语言编写了一个轻量级操作系统——UNICS(UniplexedInformationandComputingService),后缩写为UNIX。这个“游戏外挂”意外开启了操作系统的新纪元目录一、UNIX:现代操作系统的基石1.1起源与早期发展1.2分支与商业化二、Min
byte轻骑兵
·
2025-07-02 19:24
#
嵌入式Linux驱动开发实战
linux
unix
运维
从结构体成员指针反推结构体地址:rt_container_of 宏解析
这在
内核编程
和驱动开发中经常出现。rt_container_of宏的定义如下:#d
橘色的喵
·
2025-06-26 07:04
嵌入式
rt_thread
宏定义
Linux
内核编程
深度解析与实战指南
本文还有配套的精品资源,点击获取简介:本书《Linux
内核编程
》对操作系统的核心机制进行了深入探讨,尤其是Linux内核的架构、设计哲学和内核模块。
·
2025-06-13 18:30
Linux 内核体系结构详解
在Linux操作系统上,这些程序包括X窗口系统、shell命令解释系统以及那些
内核编程
接口等系统程序;操作系统内核程序即是本书
嵌入式程序员Colin
·
2025-05-18 05:34
嵌入式操作系统
c++
c语言
linux
C语言与操作系统内核模块开发:Linux内核模块编写、设备驱动开发与内核调试(一)
目录引言第一部分:Linux内核模块基础1.1Linux内核概述1.2C语言在
内核编程
中的特殊考量1.3Linux内核模块编写入门引言操作系统内核作为计算机系统的指挥中心,其重要性不言而喻。
JJJ69
·
2025-04-11 22:49
学习C语言吧
c语言
linux
驱动开发
手把手教你Linux内核编译:从零开始编写
学习Linux
内核编程
,能够让开发者深入了解操作
深度Linux
·
2025-02-13 13:59
C/C++全栈开发
操作系统
linux
内存管理
内核编译
嵌入式驱动开发详解视频教程
第一章+Linux设备驱动模型第二章Linux内核模块第三章Linux
内核编程
API第四章Linux字符设备驱动第五章Linux块设备驱动第六章Linuxplatform驱动第七章Linux触摸屏设备驱动第八章
acp小鸡炖蘑菇
·
2025-01-19 16:25
嵌入式linux
驱动开发
嵌入式
视频
windows驱动开发-
内核编程
技术汇总(二)
使用NTSTATUS值许多内核模式标准驱动程序例程和驱动程序支持例程使用NTSTATUS类型返回值。此外,在完成IRP时,驱动程序在IRP的IO_STATUS_BLOCK结构中提供NTSTATUS类型的值。NTSTATUS类型在Ntdef.h中定义,系统提供的状态代码在Ntstatus.h中定义。供应商还可以定义专用状态代码,尽管他们很少需要。NTSTATUS值分为四种类型:成功值、信息值、警告和
sului
·
2024-09-08 09:11
windows
驱动开发
Linux
内核编程
(十四)IIC总线驱动FT5X06触摸屏
本文目录前述:一、IIC子系统框架二、I2C设备驱动层1.i2c_client编写(C语言版-旧内核)2.i2c_client编写(设备树版-新内核) 前述:对于IIC的基础知识,这里不做过多的介绍,详细情况查看下面的两篇文章。文章一:超详细!新手必看!STM32基础-IIC串行通信协议-IO口模拟IIC操作BMP180。文章二:Linux应用编程(四)IIC(获取BMP180温度/气压数据)。
小仇学长
·
2024-09-02 06:42
Linux
linux
IIC驱动
FT5X06
[linux c]linux do_div() 函数用法
这个宏通常用于
内核编程
中,特别是在处理大整数和性能敏感的场合。
榕树子
·
2024-02-07 06:35
linux
c
linux
c语言
算法
Windows内核面试题(持续更新,目前完成度30%约1.8万字)
WINDOWS
内核编程
问题与答案1.WDK和SDK的区别是什么2.WDK全称叫做3.如何创建WDK程序4.WinDbg如何连接虚拟机5.Windows内核符号表的作用6.如何设置内核符号表与源文件7.如何设置断点与源码调试
虚构之人
·
2024-02-02 11:33
c++
win内核
内核
面试
c++
《Linux设备驱动开发详解》读书笔记
《Linux设备驱动开发详解》读书笔记本书主要介绍linux设备驱动开发的方法,共有21章:linux设备驱动概述及开发环境搭建驱动设计的硬件基础linux内核及
内核编程
linux内核模块linux文件系统与设备文件字符设备驱动
江洋之道
·
2024-01-25 08:02
学习
笔记
驱动开发
系统调用的概念及原理
系统调用与内核函数内核函数与普通函数形式上没有什么区别,只不过前者在内核实现,因此要满足一些
内核编程
的要求。
bala5569
·
2024-01-19 19:47
性能测试小白
linux
性能优化
Linux
内核编程
1-- 低精度定时器的使用
参考链接1参考链接2利用定时器,我们可以设定在未来的某一时刻,触发一个特定的事件。所谓低精度定时器,是指这种定时器的计时单位基于jiffies值的计数,也就是说,它的精度只有1/HZ,假如你的内核配置的HZ是1000,那意味着系统中的低分辨率定时器的精度就是1ms。早期的内核版本中,内核并不支持高精度定时器,理所当然只能使用这种低分辨率定时器,我们有时候把这种基于HZ的定时器机制称为时间轮:tim
流浪在人间
·
2024-01-19 18:34
linux
2013图书列表
agile_book_list.pl1.1.软件调试实战2.2.日臻完善:软件调试与优化典型应用3.3.Windows高级调试4.4.软件调试张银奎2-15.5.软件调试张银奎2-26.6.天书夜读:从汇编语言到Windows
内核编程
greshem
·
2024-01-05 09:12
操作系统学习记录I——Bochs安装和配置
1.概述相信不少对操作系统
内核编程
有兴趣的朋友或多或少都接触过于渊的《orange's一个操作系统的实现》,作为大三刚接触操作系统的笔者来说os内核无疑是神秘而充满吸引力的,因此在这里记录和分享一下对本书中实验操作的一些学习经历
E玖玖驷
·
2023-12-29 23:06
windows驱动
内核编程
image.png搭建驱动开发环境sdk10wdk10win7平台降低警告级别8086CPU16位汇编1982年intel退出80286处理器,第一次提出保护模式在保护模式下,段寄存器存储的段基址,而是段选择子X86体系CPU支持三种模式实模式:兼容16位CPU的模式保护模式:操作系统所在模式虚拟8086模式:可以模拟多个8086执行多任务8086处理器的段寄存器是16位,共四个:CS,DS,ES
MagicalGuy
·
2023-12-03 02:43
Windows
内核编程
基础篇之文件读/写操作
打开文件后,最重要是的操作在是对文件的读/写。读写的方法是对称的知识参数输入与输出方向不同。读取文件内容一般用ZwReadFile,写文件一般用ZwWriteFile。先看看ZwReadFile结构吧:NTSTATUSZwReadFile(_In_HANDLEFileHandle,_In_opt_HANDLEEvent,_In_opt_PIO_APC_ROUTINEApcRoutine,_In_o
PandaMohist
·
2023-12-01 00:19
Windows内核编程
文件读写操作
Linux 内核 VS 内存碎片 (上)
转载:https://pingcap.com/zh/blog/linux-kernel-vs-memory-fragmentation-1(外部)内存碎片是一个历史悠久的Linux
内核编程
问题,随着系统的运行
奇小葩
·
2023-11-22 17:27
内存管理
linux
内存管理
操作系统
嵌入式linux内核五个部分,粤嵌讲解嵌入式Linux内核及
内核编程
的三种Linux内核组成部分...
3.3.1Linux内核源代码的目录结构Linux内核源代码包含如下目录。arch:包含和硬件体系结构相关的代码,每种平台占一个相应的目录,如i386、arm、arm64、powerpc、mips等。Linux内核目前已经支持30种左右的体系结构。在arch目录下,存放的是各个平台以及各个平台的芯片对Linux内核进程调度、内存管理、中断等的支持,以及每个具体的SoC和电路板的板级支持代码。blo
时机-稍纵即逝
·
2023-11-18 23:14
嵌入式linux内核五个部分
寒江独钓-Windows内核安全编程(完整版).pdf
在这些模型框架下编程,就使
内核编程
变得简单,同样也降低了内核程序崩溃的机会。其实,Windows驱动程序
yedehei_lt
·
2023-11-17 12:43
资源分享
计算机经典书籍
Primer中文版(第4版)4.设计模式:可复用面向对象软件的基础5.浪潮之巅6.Java编程思想(第4版)7.Java核心技术卷1:基础知识8.Java核心技术卷2:高级特性9.人月神话10.Linux
内核编程
sun_xin_1001
·
2023-11-17 08:32
计算机
c/c++
设计模式
c#
2.3 Windows驱动开发:内核字符串转换方法
在
内核编程
中字符串有两种格式ANSI_STRING与UNICODE_STRING,这两种格式是微软推出的安全版本的字符串结构体,也是微软推荐使用的格式,通常情况下ANSI_STRING代表的类型是char
微软技术分享
·
2023-11-15 23:40
《灰帽黑客:攻守道》
windows
驱动开发
字符串处理
module_init和module_exit,init_module和cleanup_module
就像你写C程序需要包含C库的头文件那样,Linux
内核编程
也需要包含Kernel头文件,大多的Linux驱动程序需要包含下面三个头文件:#include#include#include其中,init.h
bytxl
·
2023-11-15 21:39
linux内核
HarmonyOS IoT设备
内核编程
接口-----互斥锁
互斥锁(Metux)主要作用是提供了对多线程共享区域的互斥访问,通过互斥锁可以确保只有一个线程在多线程共享区域执行。一、互斥锁基本概念:1、互斥锁又称互斥型信号量,是一种特殊的二值性信号量【二值型信号量可以理解为任务与中断间或者两个任务间的标志,该标志非“满”即“空”】,用于实现对共享资源的独占式处理。2、任意时刻互斥锁的状态只有两种:开锁或闭锁。3、当有任务持有时,互斥锁处于闭锁状态,这个任务获
#include
·
2023-11-12 08:59
harmonyos
物联网
单片机
linux
内核编程
之二:vm_area_struct结构体
结构体structvm_area_struct它表示的是一块连续的虚拟地址空间区域,给进程使用的,地址空间范围是0~3G,对应的物理页面都可以是不连续的结构体structvm_struct表示一块连续的虚拟地址空间区域。给内核使用,地址空间范围是(3G+896M+8M)~4G,对应的物理页面都可以是不连续的两者的区别是什么呢?在Linux中,structvm_area_struct表示的虚拟地址是
隨意的風
·
2023-10-22 03:10
linux内核编程
linux内核api书,(特价书)Linux内核API完全参考手册
前言本书使用方法第1章Linux内核API分析必备知识1Linux
内核编程
注意事项1本书中模块编译Makefile模板1内核调试函数printk2内核编译与定制4温馨提示10参考文献11第2章Linux
小肉卷
·
2023-10-18 21:47
linux内核api书
字符设备驱动基础下_并发控制(lv11-day6)
上下文和并发场合2原子变量2.1原子变量操作函数2.2测试代码3自旋锁4信号量5互斥锁6选择并发控制机制的原则1上下文和并发场合执行流:有开始有结束总体顺序执行的一段代码又称上下文.应用编程:任务上下文
内核编程
@随风()
·
2023-10-12 05:16
驱动开发
arm开发
嵌入式硬件
应用与内核通信简概(C/C++
内核编程
)
应用与内核通信简概(C/C++)1.背景2.内核方面编程2.1生成控制设备2.2控制设备的名字和符号链接2.3控制设备的删除2.4分发函数(派遣函数)2.5请求的处理3.应用方面编程3.1基本的功能需求3.2在应用程序中打开与关闭设备3.3设备控制请求3.4内核中对应处理1.背景 内核程序既没有窗口,也没有控制台,唯一使我们能够看到结果的是调试日志。那如果想要用户“看到”些什么,很多情况下,内核
Elaine猿
·
2023-10-11 16:45
驱动开发
c语言
c++
Linux 安全 - 内核提权
1.1prepare_creds1.2commit_creds二、demo参考资料前言在这篇文章:Linux安全-Credentials介绍了TaskCredentials相关的知识点,接下来给出一个
内核编程
提权的例程
小立爱学习
·
2023-10-08 10:03
系统安全
linux
系统安全
c语言
Linux
内核编程
——内核定时器
在LinuxUWBStack的内核模块实现中,较多的使用了内核定时器,本文基于fakeMCPS实现中的应用为背景,介绍了内核定时器的使用。1.内核定时器 Linux内核用来控制在未来某个时间点【基于jiffies(节拍总数)】调度执行某个函数的一种机制,相关函数位于和文件中。 当内核定时器定时时间到达时,会进入用户指定的函数,相当于软中断。内核定时器注册开启后,运行一次就不会再运行(相当于自动
萝卜D大哥
·
2023-10-07 01:48
Linux
UWB
Stack
Linux
linux
智能硬件
信息与通信
linux
内核编程
-qemu环境搭建
linux
内核编程
-qemu环境搭建1.背景最近想学习linux内核和驱动开发,但是不想买开发板,其实我觉得买了也买时间玩耍。
我想这条路
·
2023-09-24 01:59
#
linux综合
#
Android综合
linux
arm开发
嵌入式
Linux驱动程序开发快速参考
Linux设备驱动程序开发快速参第1章设备驱动简介从这里开始,我们进入
内核编程
的世界.第2章介绍了模块化,解释了内部的秘密以及展示了运行模块的代码.第2章谈论字符驱动以及展示一个基于内存的设备驱动的代码
流媒体程序员
·
2023-09-08 14:17
linux
程序开发
struct
semaphore
list
class
并发控制:上下文、中断屏蔽和原子变量
一、上下文和并发场合执行流:有开始有结束总体顺序执行的一段代码又称上下文应用编程:任务上下文
内核编程
:任务上下文:五状态可阻塞a.应用进程或线程运行在用户空间b.应用进程或线程运行在内核空间(通过调用syscall
一条飞的鱼儿
·
2023-08-31 20:29
驱动开发
linux
零基础小白速通北邮操作系统课程设计(一)Linux
内核编程
输出HelloWorld
笔者学习Linux
内核编程
主要是为了对付北邮操作系统课设,但是由于完全不熟悉Linux系统,因此记录一些从0开始面向LinuxKernelPrograming的一些知识点。
夏洛特兰兰
·
2023-08-31 00:51
北邮操作系统课设
linux
ubuntu
vim
Linux
内核编程
Hello World
1.ker_HelloWorld.c程序编写这里首先给出编写的源代码程序,后面对每行代码进行一一说明。#include#include#includestaticchar*cmd="";module_param(cmd,charp,S_IRUGO);staticint__inithelloworld_init(void){printk(KERN_ALERT"Helloworldmoduleinit
C4ndy
·
2023-08-31 00:21
Linux网络编程
linux
运维
服务器
【ARM 嵌入式 编译系列 4 -- linux 编译属性 __read_mostly 介绍】
文章目录__read_mostly介绍__read_mostly在linux中的使用.data.read_mostly介绍__read_mostly介绍__read_mostly是一个在Linux
内核编程
中用到的宏定义
CodingCos
·
2023-08-12 19:31
#
ARM
BSP
编译系列介绍
arm开发
__read_mostly
.data.read_most
Linux 4G模块开发例程
学习
内核编程
基础知识,了解内核的架构和工作原理。参考Linux内核文档,了解4G模块开发的要求和注意事项。编写4G模块的代码,并使用内核编译工具将其编译成内核模块。
AllyBo
·
2023-07-14 04:34
linux
运维
服务器
Linux之字符设备驱动框架
内核编程
的注意事项1.不
风间琉璃•
·
2023-06-22 19:13
#
Linux驱动开发
linux
驱动开发
运维
Linux
内核编程
--字符设备文件,进行进程间通信,弄清open调用流程
前言:进程间通信有:socket,共享内存,消息队列,信号量,信号,环境变量等一、字符设备驱动框架流程:字符设备驱动框架流程:二、实列代码跑的效果:发送数据接收数据Makefile我们可以单独看mmap和pollpoll的实现主要是使用的内核,驱动程序常用的等待队列关于系统调用:(以调用open函数)系统调用触发中断,中断会去找系统调用表通过基地址寻址调用内核sys_open,然后调用file_o
鹏_921010
·
2023-04-25 11:13
Linux下C语言asm,linux下的C语言的asm内嵌式汇编
Linux嵌入式汇编在Linux
内核编程
中需要完成大量与具体硬件相关的操作,由于C语言无法直接对硬件操作。GCC提供了嵌入式汇编的功能,即可以在C语言代码中内嵌汇编语言完成对硬件的直接操作。
SBZH
·
2023-04-21 18:23
Linux下C语言asm
STM32学习笔记(5)——系统定时器SysTick
即使找到也只会叫你看cm3
内核编程
手册),说明它真的很重要。
Mount256
·
2023-04-16 22:59
#
STM32/STM8
学习笔记
stm32
嵌入式
单片机
linux驱动概念学习笔记
7,linux
内核编程
中怎么创建线程?8,linux驱动开发中i2c的开发流程.9,怎么调试linux驱动程序?如调试i2c的驱动程序10,linux驱动代码中schedule()函数的作用
未燃机智鱼
·
2023-03-30 12:17
嵌入式
linux驱动
arm开发
驱动开发
arm
内核编程
入门
转载:https://www.cnblogs.com/bitor/p/9608725.html1、helloworld//必要的头文件#include#include#include//模块许可证声明(必须)MODULE_LICENSE("DualBSD/GPL");//模块加载函数(必须)staticinthello_init(void){printk(KERN_ALERT"HelloWorld
码畜笔记
·
2023-03-26 00:33
2022-02-22第一次课
从一个会开车的人,大致去了解汽车的构造
内核编程
:导引性质做开发岗位Linux一定要学好基本上国内的公司的生产环境都是用LInuxlinux是一个开源的系统,提供一个完美的方法,由软件来控制硬件人们的观念
开朗的饭团
·
2023-03-19 15:02
LINUX 0.11内核完全剖析学习笔记-第三章
内核编程
语言和环境
一.编译器linux0.11集成了两种汇编器。一种是能产生16位代码的as86汇编器,使用配套的ld86链接器;另一种是GUN汇编器gas,使用GNUld链接器俩链接产生的目标文件。1.1as86汇编器as86和ld86虽然可以编制32位代码,但在linux下用它来创建16位的启动引导扇区程序boot/bootsect.S和是模式下初始设置程序boot/setup.s的二进制执行代码。其语法结构如
qqxlt
·
2023-03-13 18:44
linux内核笔记
linux0.11
读书笔记
linux内核
【Android底层学习总结】1. 驱动开发基础
2.1.1设备驱动程序的主要功能2.1.2驱动程序的主要类型2.1.3设备文件2.1.4sys文件系统:3基础编程3.1内核模块3.1.1设备驱动的编译和加载方式3.1.2一个模块被插入时的主要工作3.2
内核编程
Alexander的鸭梨山大
·
2023-03-12 23:13
Android
#
Android底层学习
linux
Android驱动
内核
如何使用 rust 写内核模块
近年来,Rust语言以内存安全、高可靠性、零抽象等能力获得大量开发者关注,而这些特性恰好是
内核编程
中所需要的,所以我们看下如何用rust来写Linux内核模块。
阿里云云栖号
·
2023-02-06 10:34
rust
开发语言
后端
阿里云
云计算
如何使用 rust 写内核模块
近年来,Rust语言以内存安全、高可靠性、零抽象等能力获得大量开发者关注,而这些特性恰好是
内核编程
中所需要的,所以我们看下如何用rust来写Linux内核模块。
·
2023-01-17 16:00
rust云计算阿里云编程语言
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他