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设备驱动程序第三版》来源:http://blog.csdn.net/rosetta/article/details/7563601以前也曾经想过往
Linux内核编程
方向长展,但总归是没有入门的机会
sweird
·
2020-07-28 10:23
Linux
Linux内核模块编程入门
linux内核编程
(hello world示例程序)
linux内核编程
(helloworld)Linux可加载内核模块是Linux内核的最重要创新之一。它们提供了可伸缩的、动态的内核。
绯浅yousa
·
2020-07-14 16:21
linux内核
linux内核编程
-内核态文件操作
一、文件打开函数structfile*filp_open(constchar*filename,intflags,umode_tmode)定义在:fs/open.c头文件:详解:1.在用户态open函数是个变参函数,umode_tmode参数只有在O_CREAT标志指定时才出现。在内核态如果O_CREAT标志指定mode参数指定权限,否则为02.filename参数和flags和用户态一样,指定文
ggmjxry
·
2020-07-14 10:42
linux
内核
文件
linux
内核编程
文件读写
文件操作
Linux内核编程
入门实例--Hello world
Linux内核模块编程Linux内核模块编程是一个很重要的知识点。尤其是编写底层驱动程序时,一定会涉及到它。内核模块编程也是Tiger哥学习Linux时第一节课所接触的知识。由此可以看出它的important,也可以看出其实它很easy。一前言:1.什么是内核模块1>内核模块是具有独立功能的程序。它可以被单独编译,但是不能单独运行,它的运行必须被链接到内核作为内核的一部分在内核空间中运行。2>模块
Kunaly
·
2020-07-14 01:53
Linux内核编程
Linux
linux内核编程
之进程通信(管道+MQ)
管道有这样一道题目:利用两个管道进行双向通信,实现父子进程协作把整数x从1加到10。因为普通管道是单向通信的,所以,两个管道就可以双向通信了(达到类似于MQ的效果)。代码如下:/**@Author:smile丶*@Date:2019-06-1409:36:52*@LastModifiedby:smile丶*@LastModifiedtime:2019-06-1410:02:13*/#include
sjs_caomei
·
2020-07-13 13:26
linux
linux内核编程
中的几个小技巧
1构建泛型宏(./linux/include/linux/kernel.h)#definemin(x,y)({/typeof(x)_min1=(x);/typeof(y)_min2=(y);/(void)(&_min1==&_min2);/_min1len,skb->csum));if(likely(!sum)){if(unlikely(skb->ip_summed==CHECKSUM_HW))n
无相禅
·
2020-07-10 15:27
linux
linux 内核GNU C语法简介
今天看了一下午的
linux内核编程
方面的内容,发现linux内核中GNUC与标准C有一些差别,特记录如下:linux系统上可用的C编译器是GNUC编译器,它建立在自由软件基金会的编程许可证的基础上,因此可以自由发布
yarsen
·
2020-07-10 13:24
GNU
C
linux
Linux内核编程
(一)-----------AT&T汇编语法格式
写在前面:又是一个新的系列,学习的过程就是成长的过程,重要的是坚持,当然跟之前一样,也是一边学习一边整理总结。用一段在某篇文章看到话来开始这个系列吧:那些跑得更远的人,都是因为别人放弃时,他们还在跑。所以就这么一直勇敢地跑下去吧。毕竟,你是一个,连放弃,也做不到的人啊。QQ:993650814第一篇主要介绍几个常用的汇编语法,后面会用一个嵌入式汇编例子来讲解通常汇编在C中内嵌的用法。正文:1、寄存
KiranWang
·
2020-07-10 09:13
Linux内核编程
linux 内核中GNU C与标准C差别
今天看了一下午的
linux内核编程
方面的内容,发现linux内核中GNUC与标准C有一些差别,特记录如下:linux系统上可用的C编译器是GNUC编译器,它建立在自由软件基金会的编程许可证的基础上,因此可以自由发布
pointfish
·
2020-07-09 21:02
Linux-other
Linux内核编程
初体验 —— hello world
我们实验班的学习方向是Linux设备驱动编写。Linux设备驱动会以内核模块的形式出现,因此,学会编写Linux内核模块编程是学习Linux设备驱动的先决条件。首先得了解一下什么是模块:模块是具有独立功能的程序,它可以被单独编译,但不能独立运行。它在运行时被链接到内核作为内核的一部分在内核空间运行,这与运行在用户空间的进程是不同的。模块通常由一组函数和数据结构组成,用来实现一种文件系统、一个驱动程
冰清
·
2020-07-09 13:48
Linux
linux kernel内核编程基础总结
Linux_kernel编程基础总结时间:2015/10/9背景:学习
linux内核编程
,总结学习中的经验,方便之后查看;通常我们想弄清楚linux内核是怎么样工作的,如何使用内核接口来编写linux内核代码的第一步都是搭建一个实验环境来做试验的
墨夜风名
·
2020-07-06 12:19
Linux_C_编码总结
Linux_内核驱动
leetcode 10 Regular Expression Matching(简单正则表达式匹配)
最近代码写的少了,而leetcode一直想做一个python,c/c++解题报告的专题,c/c++一直是我非常喜欢的,c语言编程练习的重要性体现在
linux内核编程
以及一些大公司算法上机的要求,python
weixin_34129145
·
2020-07-06 00:16
Linux设备驱动程序总结
有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML图表FLowchart流程图导出与导入导出导入核心模块
Linux
chinamaoge
·
2020-07-04 13:36
Linux
driver
所有博客(下)
目录4,Linux4.1,
Linux内核编程
16篇4.2,Linux常用操作3篇5,计算机基础12篇6,计算机网络5篇7,数学与逻辑7.1,数学竞赛4篇7.2,数学10篇7.3,逻辑思维20篇7.4,计算理论
csuzhucong
·
2020-07-02 13:18
更新
Linux内核编程
(二)-----------Linux内核初探
写在前面:本篇主要介绍Linux内核的开发模式、linux代码的组成、vmlinuxzImageuImage的区别,以及编译下内核。正文:一、Linux内核的开发模式1、git:是一个分布式的文件版本管理工具,这个在平时工作中必用的工具。内核下载的方式,直接到https://mirrors.edge.kernel.org/pub/linux/kernel/下载,也可以通过git获取,第一步:安装g
KiranWang
·
2020-06-28 23:17
Linux内核编程
Linux内核编程
接口函数
Linux内核编程
接口函数转载请注明出处:http://blog.csdn.net/drivelinux/article/details/8656280字符设备相关函数1.alloc_chrdev_region
ich_ss
·
2020-06-26 21:53
利用Linux Netfilter框架实现Linux内核模块阻断HTTP数据包
主要参考内容:netfilter数据包过滤【https://tcspecial.iteye.com/blog/2174784】(很旧版netfilter下阻断http包)
Linux内核编程
--从HelloWord
那花
·
2020-06-25 21:33
作业
没错就是作业
Linux内核模块编程(打印所有内核线程的程序名、PID号,进程状态,及进程优先级,父进程的PID)
首先,我们开始编写模块代码,这是
Linux内核编程
的核心代码,代码如下:#include#include#include#include#include//初始化函数staticin
wfs1874
·
2020-06-25 01:48
Linux
linux内核编程
之list_head
【版权声明:转载请保留出处:blog.csdn.net/gentleliu。邮箱:shallnew*163.com】linux内核头文件#include中定义了一个list_head类型的结构体:structlist_head{structlist_head*next,*prev;};一般我们的链表节点都包含许多成员,要使用list_head结构体来构造链表的话需要将该结构体嵌入节点结构,可以声明
shallnet
·
2020-06-23 10:53
linux
内核编程系列
Linux内核模块编程(列出系统中所有内核线程的程序名、PID 号、进程状态及进程优先级、父进程的PID)
1.首先,我们开始编写模块代码,这是
Linux内核编程
的核心代码,代码如下:#include#include#include#include#include//初始化函数staticinthello_init
剑魄未改
·
2020-06-22 07:41
操作系统
操作系统
Linux内核编程
-- 从HelloWord到基于NetFilter的Linux驱动Demo
基于LinuxUbuntu1.安装内核头文件1.1查看Linux内核版本usname-r1.2安装Linux内核头文件sudoapt-getinstalllinux-headers-`uname-r`默认安装目录:/lib/modules/"内核版本号"2.编写HelloWord2.1编写hello.c随便进入一个目录,使用:touchhello.c新建一个hello.c文件。使用:vimhell
Solinzon
·
2020-06-21 14:09
other
24小时学通Linux内核--内核探索工具类
可以尽情的做自己喜欢的事情,专心待在实验室里燥起来了,因为大二的时候接触过Linux,只是关于内核方面确实是不好懂,所以十天的时间里还是希望能够补充一下Linux内核相关知识,接下来继续待在实验室里想总结一下
Linux
李肖遥
·
2020-06-21 08:27
嵌入式
Linux
内核
linux内核编程
linux内核教程 Linux内核网络工程师 linux内核与驱动工程师视频
┣━━09章项目培训[952.3M]┃┣━━09章-01节-零拷贝入门实验.mp4[91.1M]┃┣━━09章-02节-构建内核网络数据源.mp4[90.1M]┃┣━━09章-03节-零拷贝实验环境搭建.mp4[134.8M]┃┣━━09章-04节-零拷贝实现原理.mp4[236.3M]┃┣━━09章-05节-零拷贝源码分析1.mp4[227.9M]┃┗━━09章-06节-零拷贝源码分析2.mp4
java20192019
·
2020-02-16 04:13
计算机书籍推荐
算法导论(第2版)代码大全(第2版)C++Primer中文版(第4版)设计模式:可复用面向对象软件的基础浪潮之巅Java编程思想(第4版)Java核心技术卷1:基础知识Java核心技术卷2:高级特性人月神话
Linux
Ethan_Walker
·
2020-02-12 09:42
宋宝华:
Linux内核编程
广泛使用的前向声明(Forward Declaration)
前向声明编程定律先强调一点:在一切可能的场景,尽可能地使用前向声明(ForwardDeclaration)。这符合信息隐蔽的原则。一个例子regmap那么前向声明究竟是个什么鬼?在内核写代码和看代码的童鞋,经常发现Linux内核里面充斥着这样的代码,比如include/vimlinux/regulator/driver.h文件中:我们以regmap这个结构体为例,这个地方就是一个前向声明,告诉后面
Linux阅码场
·
2019-10-16 18:58
linux内核编程
-IPC进程间通信
进程间通信方式方式管道(使用简单),信号量,信号(开销比较小),共享映射区(共享内存),消息队列,套接字(sokect,低速稳定)进程间通信的本质进程间通信.png管道管道的通信机制.png1、无名管道,半双工的通信方式(只能一个方向流动)2、管道可以理解为一种特殊的文件形式,我们可以用文件的读写方法,不是一个简单的文件,只会占用内存。3、管道只能是血缘关系的进程间通信4、数据不能自己写自己读5、
Peakmain
·
2019-10-12 16:04
内核必须懂(一): 自定义系统调用和内核模块的使用(2019.6重编版)
目录前言内核模块用内核模块进行系统调用自定义系统调用解压系统源码撰写自定义系统调用编译前准备去优化编译安装重启之后最后前言自定义系统调用和内核模块的使用是
Linux内核编程
的基础,这篇就带大家来看看它们的
sean_depp
·
2019-06-06 22:16
Linux内核编程
:实现断言
断言定义断言是非常常见的,其语义就是判断某个条件,如果不为真,就执行一段非常规的动作,一般为程序立马结束运行。分类断言分为动态和静态的。动态断言也叫运行时断言,即在程序运行的使用,由比较指令来判断条件;而静态断言是在代码的编译过程中,通过编译器对常量表达式的计算来判断条件成立与否的,即一般不会生成额外的代码。实现静态断言一般我们在没有编译器特性支撑的情况下,可以使用C语言的语法语义的正确性来实现,
德阳凯子哥
·
2019-03-03 23:16
Linux内核
linux内核编程
0.加载模块:modprobemodname或者:insmod/path/to/modname.ko(正式加载用前者,调试建议用后者)1.modprobe-rmodname或者rmmodmodname卸载对应模块2.modprobe-l:列举所有可加载模块,lsmod列举所有已加载模块3.printk内容查看:dmesg或者:cat/proc/kmsg4.printk日志级别:echo7>/pro
Freboat
·
2018-05-12 12:09
linux内核编程
--0内核源码目录(3.0.1版本)
一、官网下载的3.0.1内核源码解压说明:之所有选择3.0.1内核版本源码,是因为其相对于2.6.24及后续2.6版本比较新,而相对于最新的内核版本源码(4.16)也不算太古老。Linux内核以稳定闻名,因而选择中间3.0第一个版本进行分析,后续内核代码更新也与此版本差异不大,读者可以基于此目录分析自行查阅。二、Linux内核源码目录普通文件.gitignoregit的版本管理文件。我们都知道Li
那个少年
·
2018-04-27 12:13
Linux
user
&
kernel
linux内核编程
--4netfiter钩子函数
1.背景京东金融资深C/C++开发工程师岗位被面试到,本来在《深入linux内核架构》一书中见过,但由于整本书看的不是很懂,也没实验,当时吱吱唔唔的回答了,答案不是很理想。后来也就没有了后来······2.概述netfilter是自2.4内核的一个数据包过滤框架。可以过滤数据包,网络地址和端口转换(nat和napt技术),以及其他操作数据包的功能。主要工作原理是在内核模块注册回调函数(hook函数
那个少年
·
2018-03-09 22:51
Linux
user
&
kernel
container of()函数简介
在
linux内核编程
中,会经常见到一个宏函数container_of(ptr,type,member),但是当你通过追踪源码时,像我们这样的一般人就会绝望了(这一堆都是什么呀?函数还可以这样定义???
s2603898260
·
2018-02-25 21:45
container
of
0指针的使用
Linux驱动
Linux
驱动开发
linux内核编程
--1模块的装载和卸载
1.简介linux模块是具有独立功能的程序,它可以被单独编译,但不能独立运行。它在运行时被链接到内核作为内核的一部分在内核空间运行,这与运行在用户空间的进程是不同的。模块通常由一组函数和数据结构组成,用来实现一种文件系统、一个驱动程序或其他内核上层的功能。也就是说:模块就是整个内核的一部分。但是跟C程序中函数不一样的一点是,内核模块可以在它所认为适当的时候,插入到内核或者从内核中删除,而且还不影响
那个少年
·
2017-11-06 23:18
Linux
user
&
kernel
Linux内核编程
风格
这篇短小的文档用于描述
linux内核编程
中推荐的编程风格。编程风格是很个人化的东西,我不想把我的观点_强加_给任何人,但这是我必须维护的代码中所遵守的,我也建议其他部分的代码也能遵守它。
Dark_gezi
·
2017-03-01 09:42
LINUX
C/C++
博士第一年,要把这些计算机基础课程学好(附教程)
StructureAndInterpretationOfComputerPrograms编程语言类:C++primer;effectiveC++&moreeffectiveC++;python&linuxscript;操作系统类:深入理解计算机系统;Linux&Unix编程:
Linux
StevenYang313
·
2016-10-14 19:05
linux内核编程
实验三
内核的定时机制实验问题A使用ITIMER_REAL型定时器实现一个gettimeofday(),将它设置为每秒产生一个信号,并计算已经经过的秒数。问题B使用以上实现的gettimeofday()实现一个精确到微秒级的“闹钟”。问题C实现以上一个父进程和两个子进程并发递归计算不同项数的fibonacci序列的程序,分析每个进程三种类型定时器测出的时间关系。解决问题A一直被实现一个gettimeofd
sddxqlrjxr
·
2016-04-25 20:00
编程
linux
kernel
linux内核编程
实验一
问题A:1、提取cpu类型2、提取内核版本问题B:1、启动以来经历的时间,以dd:hh:mm:ss报告问题C:1、cpu执行用户态、系统态、空闲态所用时间2、多少次磁盘请求3、多少次上下文切换4、启动了多少次进程实验问题D:1、内存总量2、可用内存3、系统平均负荷解决问题A:1、读取文件/proc/cpuinfo,并且将结果显示即可。2、读取文件/proc/version,并且将结果显示即可。解决
sddxqlrjxr
·
2016-04-24 16:00
linux
kernel
C语言
内核
Linux内核编程
实验二
1、实验名称:shell命令解释系统设计实验2、实验要求:问题A:实现一个能处理前后台运行命令的shell。问题B:实现一个带有管道功能的shell。问题C:实现一个能处理I/O重定向的shell。问题D:实现一个能在一行上处理多条命令的shell。将问题A-D集中到一个shell解析程序中。3、解决思路第一步解决问题D。一行上多条命令使用;分开,;两边可以有空格,也可以没有,或者都考虑(健壮性)
在摸索中前进
·
2016-04-20 20:39
Linux内核实验
山大
linux内核编程
实验二
Linux内核编程
实验二
1、实验名称:shell命令解释系统设计实验2、实验要求:问题A:实现一个能处理前后台运行命令的shell。问题B:实现一个带有管道功能的shell。问题C:实现一个能处理I/O重定向的shell。问题D:实现一个能在一行上处理多条命令的shell。将问题A-D集中到一个shell解析程序中。3、解决思路第一步解决问题D。一行上多条命令使用;分开,;两边可以有空格,也可以没有,或者都考虑(健壮性)
sddxqlrjxr
·
2016-04-20 20:00
实验二
linux内核编程
山大
linux驱动入口函数module_init详解
原文链接:http://blog.csdn.net/zhandoushi1982/article/details/4927579就像你写C程序需要包含C库的头文件那样,
Linux内核编程
也需要包含Kernel
xinyuan510214
·
2016-03-21 15:00
module_init
linux 内核编译
linux内核编程
4部曲之一:linux内核编译(2.6.12版本)图文解说2012-05-1700:38:37分类:LINUX
linux内核编程
4部曲之一:linux内核编译(2.6.12版本)图文解说
prike
·
2016-03-06 16:00
【深入实践ucos-ii】开篇
个年头过去,从当初对C语言指针都把握不好的大学僧到现在玩转C语言编程(你可能觉得我吹嘘,如果你非要认为能够轻松写出像linux内核那样面向对象的架构才能算是玩转,那么你的确实要求有点高了)到现在从事一些
linux
u012819339
·
2016-02-09 22:00
操作系统
嵌入式
ucos-II
初探
linux内核编程
,参数传递以及模块间函数调用
一.前言 我们一起从3个小例子来体验一下
linux内核编程
。
yuuyuu
·
2016-01-11 00:00
Linux内核编程
1.Hello,world..3Exhello.c..31.1内核模块的编译文件...41.2多文件内核模块...5 1.Hello,world当第一个穴居的原始人程序员在墙上凿出第一个“洞穴计算机”的程序时,那是一个打印出用羚羊角上的图案表示的“Helloworld”的程序。罗马编程教科书上是以“Salut,Mundi”的程序开始的。我不知道如果人们打破这个传统后会有什么后果,但我认为还是不要去
·
2015-12-09 11:38
linux
十天学Linux内核之第一天---内核探索工具类
可以尽情的做自己喜欢的事情,专心待在实验室里燥起来了,因为大二的时候接触过Linux,只是关于内核方面确实是不好懂,所以十天的时间里还是希望能够补充一下Linux内核相关知识,接下来继续待在实验室里想总结一下
Linux
·
2015-11-13 16:15
linux
24小时学通Linux内核--内核探索工具类
可以尽情的做自己喜欢的事情,专心待在实验室里燥起来了,因为大二的时候接触过Linux,只是关于内核方面确实是不好懂,所以十天的时间里还是希望能够补充一下Linux内核相关知识,接下来继续待在实验室里想总结一下
Linux
·
2015-11-13 07:28
linux
Linux 内核编程之文件系统 VFS中的目录项对象和文件对象 http://www.linuxidc.com/Linux/2011-02/32127p2.htm
Linux内核编程
之文件系统VFS中的目录项对象和文件对象[日期:2011-02-10]来源:blog.csdn.net/tigerjb 作者:tiger-john[字体:大 中 小]一.VFS中的目录项对象
baidu_30399443
·
2015-09-03 20:00
module_init的加载和释放
像你写C程序需要包含C库的头文件那样,
Linux内核编程
也需要包含Kernel头文件,大多的Linux驱动程序需要包含下面三个头文件:#include#include#include 其中,init.h
Blaider
·
2015-08-24 17:00
linux内核编程
4部曲之一:linux内核编译(2.6.12版本)图文解说
原文地址:http://blog.chinaunix.net/uid-24782829-id-3211008.html
linux内核编程
4部曲之一:linux内核编译(2.6.12版本)图文解说
linux
fhl13017599952
·
2015-03-16 14:00
linux
24小时学通Linux内核--内核探索工具类
可以尽情的做自己喜欢的事情,专心待在实验室里燥起来了,因为大二的时候接触过Linux,只是关于内核方面确实是不好懂,所以十天的时间里还是希望能够补充一下Linux内核相关知识,接下来继续待在实验室里想总结一下
Linux
技术让梦想更伟大
·
2015-01-20 17:00
上一页
1
2
3
4
5
下一页
按字母分类:
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
其他