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内核学习(17)
内核编程
基本功之内核链表list_entry
内核中链表的使用非常广泛,这里将linux/list.h中的部分,也是最常用的宏定义给总结了。Pro-III、内核链表:1、定义+初始化:#defineLIST_HEAD_INIT(name){&(name),&(name)}#defineLIST_HEAD(name)/structlist_headname=LIST_HEAD_INIT(name)staticinlinevoidINIT_LIS
cug_fish_2009
·
2020-06-23 01:34
c++的优点,我为什么要坚持学习c++,学习MFC
今天一个老师的话也深深的触动了我,他说,你弄过
内核编程
没?我说没,他来了一句:那你现在C++能做的JAVA也能做,你c++做的还不到位。。。我当时惊呆了,,于是重新来审视下自己。
ctgu_水木年华
·
2020-06-23 01:53
c++基础知识
c++
计算机
Linux内核模块编程(列出系统中所有内核线程的程序名、PID 号、进程状态及进程优先级、父进程的PID)
1.首先,我们开始编写模块代码,这是Linux
内核编程
的核心代码,代码如下:#include#include#include#include#include//初始化函数staticinthello_init
剑魄未改
·
2020-06-22 07:41
操作系统
操作系统
Windows
内核编程
基础之使用LIST_ENTRY
LIST_ENTRY是一个双向链表结构。它总是在使用的时候被插入到已有的数据结构中。Windows内核中使用LIST_ENTRY作为i链表,这个结构随处可见。看看下面的代码,构建了一个链表,每个节点是又一个文件名和一个文件大小两个数据成员组成的结构。此外有一个FILE_OBJECT指针对象,在驱动中代表一个文件对象。该链表的作用是保存了文件的文件长度和文件名。typedefstruct{LIST_
PandaMohist
·
2020-06-21 21:09
windows驱动开发
linux内核完全剖析0.12笔记--第四章 80x86保护模式及其编程
这一章涉及intel8086系列cpu的保护模式编程,应该是学习
内核编程
,驱动编程及嵌入式编程一些基础知识。不过对于没接触过底层编程的我来说,感觉还是好复杂。
AstrayLinux
·
2020-06-21 17:22
linux内核学习
《Windows
内核编程
》---系统线程和同步事件
系统线程:在驱动中生成的线程一般是系统线程,系统线程所在的进程名为“System”,用到的内核API函数是:NTSTATUSPsCreateSystemThread(OUTPHANDLEThreadHandle,INULONGDesiredAccess,INPOBJECT_ATTRIBUTESobjectAttributesOPTIONAL,INHANDLEProcessHandleOPTIONA
ACE1985
·
2020-06-21 16:12
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
内核
第三章
内核编程
基础
第三章
内核编程
基础这章我们来深入讨论一下内核Api的结构与定义。我们也深入分析一下在驱动中的代码调用机制。最后,我们把所有的知识汇总在一起完成我们第一个驱动函数。
OneTrainee
·
2020-05-18 10:00
Aurix免费工具链调试环境搭建成功—Apple的学习笔记
回来之后公司提供更高级的TC3x开发板,我就把它封存了,直到最近看到这个开发板,要把它玩起来,想起了之前还有一个学写os的目标没有完成,其实我芯片外设接触的多,芯片内核及汇编接触的比较少,此次目标包括学习
内核编程
调试及优化
applecai
·
2020-04-28 19:04
Linux驱动之
内核编程
Linux操作系统是UNIX操作系统的一种克隆系统,诞生于1991年10月5日(第一次正式向外公布的时间)。Linux操作系统的诞生、发展和成长过程依赖者5个重要支柱:UNIX操作系统、Minix操作系统、GNU计划、Posix标准和Internet。一、Linux内核的组成1.1Linux内核源码目录结构本书范例程序基于Linux2.6.28.6内核源码,其目录结构如下:arch:包含和硬件体系
konishi5202
·
2020-04-12 11:07
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
2017-12-27
dllwrite_on_copy基址相同通过全局钩子捕获WM_SHELLWH_CBT,程序启动会触发HCBT_CREATEWND或者HSHELL_WINDOWCREATED,DLL也就注入到你的进程了寒江独钓
内核编程
透明加密
zeromemcpy
·
2020-02-16 01:18
HOWTO do Linux kernel development
它试图不包含与
内核编程
的技术方面有关的任何东西,但会帮助你指出正确的方向。如果本文档中的任何内容过期,请将补丁发送给本文档底部列出的此文件的维护人员。介绍那么,你想学习如何成为Linux内核开发者?
御浅永夜
·
2020-02-15 14:13
计算机书籍推荐
)代码大全(第2版)C++Primer中文版(第4版)设计模式:可复用面向对象软件的基础浪潮之巅Java编程思想(第4版)Java核心技术卷1:基础知识Java核心技术卷2:高级特性人月神话Linux
内核编程
Ethan_Walker
·
2020-02-12 09:42
BE和LE在编程时的区别
针对CPU的Byteorder在
内核编程
时候要注意ARM和Intel的区别,ARMisbi-endian;Intelarchitectureislittle-endian。
壹杯敬月光
·
2020-01-06 22:24
《Windows内核安全与驱动开发》阅读笔记 -- 索引目录
《Windows内核安全与驱动开发》阅读笔记--索引目录一、内核上机指导二、
内核编程
环境及其特殊性2.1
内核编程
的环境2.2数据类型2.3重要的数据结构2.4函数调用2.5Windows的驱动开发模型2.6WDK
OneTrainee
·
2019-12-06 09:00
内核里获得系统版本,与系统滴答时间
内核编程
难免使用硬编码,以及使用一些高版本系统才出现的函数。为了使得驱动能在低版本的系统上正常运行,就需要根据不同系统做不同处理了。
csnd
·
2019-10-22 12:00
X64驱动:内核操作进线程/模块
注意:下面的所有案例必须使用.C结尾的文件,且必须在链接选项中加入/INTEGRITYCHECK选项,否则编译根本无法通过(整合修正,Win10可编译,须在测试模式下进行),内核代码相对固定,如果对
内核编程
不太熟的话
lyshark
·
2019-10-21 07:00
宋宝华: Linux
内核编程
广泛使用的前向声明(Forward Declaration)
前向声明编程定律先强调一点:在一切可能的场景,尽可能地使用前向声明(ForwardDeclaration)。这符合信息隐蔽的原则。一个例子regmap那么前向声明究竟是个什么鬼?在内核写代码和看代码的童鞋,经常发现Linux内核里面充斥着这样的代码,比如include/vimlinux/regulator/driver.h文件中:我们以regmap这个结构体为例,这个地方就是一个前向声明,告诉后面
Linux阅码场
·
2019-10-16 18:58
Windows
内核编程
时的习惯与注意事项
Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html一、
内核编程
注意细节:在头文件中使用的是,而非普通的。
OneTrainee
·
2019-10-15 11:00
linux
内核编程
-IPC进程间通信
进程间通信方式方式管道(使用简单),信号量,信号(开销比较小),共享映射区(共享内存),消息队列,套接字(sokect,低速稳定)进程间通信的本质进程间通信.png管道管道的通信机制.png1、无名管道,半双工的通信方式(只能一个方向流动)2、管道可以理解为一种特殊的文件形式,我们可以用文件的读写方法,不是一个简单的文件,只会占用内存。3、管道只能是血缘关系的进程间通信4、数据不能自己写自己读5、
Peakmain
·
2019-10-12 16:04
WIN64
内核编程
-的基础知识
WIN64
内核编程
基础班(作者:胡文亮)https://www.dbgpro.com/x64driver我们先从一份“简历”说起:姓名:X86或80x86性别:?
csnd
·
2019-09-28 07:00
Linux内核剖析-----IO复用函数epoll内核源码剖析
另外还创建两个内核cache(在
内核编程
中,如果需要频繁分配小块内存,应该创建kmem_cahe来做“内存池”),分别用于存放st
Eunice_fan1207
·
2019-08-16 11:34
Linux操作系统讲解
用C语言编写,可移植性强,有
内核编程
接口。支持多用户和多任务,支持安全的分层文件系统。大量的实用程序,完善的网络功能以及强大的支持文档。可靠的安全性和良好的稳定性,对开发者更友好。
顾北向南
·
2019-07-15 14:42
64位内核开发第二讲.
内核编程
注意事项,以及UNICODE_STRING
目录一丶驱动是如何运行的1.服务注册驱动二丶Ring3跟Ring0通讯的几种方式1.IOCTRL_CODE控制代码的几种IO2.非控制缓冲区的三种方式.三丶Ring3跟Ring0开发区别1.什么是Ring3什么是Ring0四丶IRQL中断级别五丶驱动函数的分类六丶编写内核中的注意事项一丶驱动是如何运行的1.服务注册驱动我们编写驱动.一定要知道驱动是如何运行的首先在我们安装一个驱动的时候,会创建一个
iBinary
·
2019-06-08 14:00
内核必须懂(一): 自定义系统调用和内核模块的使用(2019.6重编版)
目录前言内核模块用内核模块进行系统调用自定义系统调用解压系统源码撰写自定义系统调用编译前准备去优化编译安装重启之后最后前言自定义系统调用和内核模块的使用是Linux
内核编程
的基础,这篇就带大家来看看它们的
sean_depp
·
2019-06-06 22:16
macOS 开发 - 入门笔记(转)
1、《macOS应用开发基础教程》2、《Cocoa入门:使用Objective-C》3、非虫:《macOS软件安全与逆向分析》4、官方开发文档5、深入解析MacOSX&iOS操作系统6、OSX与iOS
内核编程
[email protected]
·
2019-04-22 19:28
理解 Linux Kernel (1) - BIOS
我不能担保我所进行的所有试验性操作都是对的,但至少操作我的环境下成功地运行了,并帮助我触及我始终敬畏的硬件&OS《Linux内核完全注释》第三章——
内核编程
语言和环境,描述了用as86汇编语言构建boot
DorMOUSENone
·
2019-04-21 12:27
Linux
Kernel
Linux
内核编程
:实现断言
断言定义断言是非常常见的,其语义就是判断某个条件,如果不为真,就执行一段非常规的动作,一般为程序立马结束运行。分类断言分为动态和静态的。动态断言也叫运行时断言,即在程序运行的使用,由比较指令来判断条件;而静态断言是在代码的编译过程中,通过编译器对常量表达式的计算来判断条件成立与否的,即一般不会生成额外的代码。实现静态断言一般我们在没有编译器特性支撑的情况下,可以使用C语言的语法语义的正确性来实现,
德阳凯子哥
·
2019-03-03 23:16
Linux内核
第18章 SysTick—系统定时器
本章参考资料《Cortex®-M7
内核编程
手册》-4.4章节SysTickTimer(STK),和4.38章节SHPRx,其中STK这个章节有SysTick的简介和寄存器的详细描述。
BH_firege
·
2018-07-17 15:20
【书籍连载】《STM32 HAL 库开发实战指南—基于F7》-第一章
第1章如何使用本书1.1本书的参考资料本书参考资料为:《STM32F76xxx参考手册》和《Cortex®-M7
内核编程
手册》,这两本是ST官方的手册,属于精华版,面面俱到,无所不包。
BH_firege
·
2018-06-02 20:53
书籍连载
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
驱动开发
Netfilter学习之NAT类型动态配置(一)iptables和Netfilter简介
因此,本系列博客目的在于通过对Netfilter和Iptables的学习,通过
内核编程
实现FullCone,RestrictedCone,PortRestrictedCone和SymmetricNAPT
chtianyu
·
2017-12-03 17:31
linux
内核编程
--1模块的装载和卸载
1.简介linux模块是具有独立功能的程序,它可以被单独编译,但不能独立运行。它在运行时被链接到内核作为内核的一部分在内核空间运行,这与运行在用户空间的进程是不同的。模块通常由一组函数和数据结构组成,用来实现一种文件系统、一个驱动程序或其他内核上层的功能。也就是说:模块就是整个内核的一部分。但是跟C程序中函数不一样的一点是,内核模块可以在它所认为适当的时候,插入到内核或者从内核中删除,而且还不影响
那个少年
·
2017-11-06 23:18
Linux
user
&
kernel
linux内核设计与实现 第二章,从内核出发
内核开发的特点
内核编程
时既不能访问c库,也不能访问标准的c头文件。
内核编程
必须使用,gnuc
内核编程
时缺乏像用户空间那样的内存保护机制。
内核编程
时难以执行浮点运算。
WebSSO
·
2017-10-06 06:07
gh0st源码分析与远控的编写(一)
最近在看老狼的gh0st
内核编程
,想了很久要不要写文章,最后还是觉得很有必要,原因过一会讲。
gogocsdn1
·
2017-06-15 10:56
Linux
内核编程
风格
这篇短小的文档用于描述linux
内核编程
中推荐的编程风格。编程风格是很个人化的东西,我不想把我的观点_强加_给任何人,但这是我必须维护的代码中所遵守的,我也建议其他部分的代码也能遵守它。
Dark_gezi
·
2017-03-01 09:42
LINUX
C/C++
Win64 驱动
内核编程
-2.基本框架(安装.通讯.HelloWorld)
驱动安装,通讯,HelloWorld开发驱动的简单流程是这样,开发驱动安装程序,开发驱动程序,然后安装程序(或者其他程序)通过通讯给驱动传命令,驱动接到之后进行解析并且执行,然后把执行结果返回。驱动程序HelloWorld之前总结了驱动环境的搭建,这里就直接继续之前搭建好的环境创建项目,打开vs2015创建一个驱动项目:写代码之前先配置下编译选项:然后添加一个项目文件main.c(注意后缀是.c,
TK13
·
2017-02-26 14:15
驱动内核编程
博士第一年,要把这些计算机基础课程学好(附教程)
StructureAndInterpretationOfComputerPrograms编程语言类:C++primer;effectiveC++&moreeffectiveC++;python&linuxscript;操作系统类:深入理解计算机系统;Linux&Unix编程:Linux
内核编程
StevenYang313
·
2016-10-14 19:05
《Linux内核设计与实现》笔记——内核编译过程以及
内核编程
特点
内核编译的过程1.下载内核源代码树解压至/usr/src#tarxflinux-3.13.5.tar.xz-C/usr/src#ln-sv/usr/src/linux-3.13.5/usr/src/linux2.内核配置配置文件保存在内核源码根目录下.config文件中makeoldconfig备份当前.config文件为.config.oldmakeconfig在命令行下,逐项配置makemen
giantpoplar
·
2016-06-30 15:00
linux
kernel
如何搭建Visual Studio的
内核编程
开发环境
内核安全编程》这本书,感觉这本书非常好,有兴趣的朋友可以买来看看,有关这本书的信息请参考:http://www.china-pub.com/195592这本书里没有详细介绍如何搭建VisualStudio的
内核编程
开发环境
findumars
·
2016-05-30 17:00
Windows 内核数据结构学习总结
《Windows
内核编程
》---基本数据结构驱动对象:每个驱动程序都会有唯一的驱动对象与之对应,并且这个驱动对象是在驱动加载时被内核中的对象管理程序所创建的。
bcbobo21cn
·
2016-05-08 15:00
windows
windows
windows
内核
内核数据结构
irp
Linux使用问题杂记--解决无/var/log/messages 问题
1
内核编程
insmod后,Ubuntu查看日志无/var/log/messages写好简单内核模块如hellomod.ko后,执行命令insmodhellomod.ko后,查看内核打印的printk信息
Riv3r
·
2016-05-05 11:17
linux
ubuntu
内核
HAL库-STM32F4 外部中断-延时
注:资料来源:野火《零死角玩转STM32-F429》、ST-《STM32F4xx中文参考手册》、ST-《Cortex™-M4
内核编程
手册》开始:1.嵌套向量中断寄存器(NVIC):嵌套向量中断控制器(NVIC
里先森
·
2016-04-30 21:00
下位机
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语言
内核
上一页
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
其他