自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

pannlz的博客

学习,记录,成长

  • 博客(25)
  • 收藏
  • 关注

原创 【Linux】/proc文件系统

简单介绍了/proc文件系统

2024-03-22 22:52:02 911

原创 【Linux】内核空间动态内存申请

简单介绍了内核空间动态内存申请的方法

2024-03-22 21:50:48 1325

原创 【PCIe】TLP结构与配置空间

介绍pcie的TLP结构与配置空间

2024-03-08 19:58:40 1888 1

原创 【PCIe】 PCIe 拓扑结构与分层结构

介绍pcie拓扑结构与分层结构

2024-03-08 10:32:21 1362

原创 【PCIe】PCIe基础

PCIe的初识,包括PCIe简介以及pcie的速度计算

2024-03-07 22:26:48 1085

原创 运行在浏览器里的虚拟机-v86

介绍了可以运行在浏览器里的虚拟机v86,以及与之相关的web-gdb项目,diy内核镜像等内容

2024-02-20 06:45:00 3419

原创 【Linux】ioctl()方法

应该在专用头文件中生成自己的ioctl编号,这不是强制性的,但建议这样做,因为这个头文件在用户空间中也可以使用。换句话说,应该复制ioctl头文件,以便在内核中有一个,在用户空间中也有一个,该文件可以包含在用户应用程序中。系统内ioctl号码的唯一性可以防止把正确的命令发送到错误的设备,或者将错误的参数传递给正确的命令(给出重复的ioctl号码)。在Documentation/ioctl/ioctl-number.txt中列出,需要创建ioctl命令时,这是一个很好的开始。使用switch …

2024-02-11 07:00:00 1652

原创 【Linux】设备驱动——读写文件操作

(语义检查器,内核用来查找可能的编码错误),让开发人员知道他实际上将要使用不可信指针(也就是在当前虚拟地址映射中可能无效的指针),他不应该间接访问,而应使用专用的内核函数来访问该指针指向的内存。当复制像char和int这样的单个简单变量,而不是像结构和数组这样的大数据类型时,内核会提供专用的宏来快速执行所需的操作。每个函数的返回值是未复制的字节数,如果成功,则返回值应该是0。使用copy_to_user()时,如果某些数据无法复制,则该函数将使用零字节将复制的数据填充到请求的大小。返回值是读取的数据量。

2024-02-10 07:00:00 1753

原创 【Linux】poll()方法

通常的方法是根据select()(或poll())系统调用支持的事件,为每个事件类型使用一个等待队列(一方面是考虑可读性,另一方面是考虑可写性,最后是考虑需要时的异常处理)。(此时调用select或poll),则返回**(* poll)文件操作的返回值必须是POLLIN |POLLRDNORM**;如果驱动程序没有定义这个方法,则设备将被视为总是可读可写的,poll()或select()系统调用立即返回。当用户需要读取时,如果有数据,数据会立即发送到进程,;,为需要接收内核通知的进程注册事件,在。

2024-02-10 07:00:00 947

原创 【Linux】设备驱动——设备文件操作、表示、注册

的指针),它代表打开的文件,并且提供一组函数,它们与底层文件结构上执行的方法相关,这些方法包括open、write、seek、read、select等。是文件系统的数据结构,它只与操作系统相关,用于保存文件(无论它的类型是字符、块、管道等)或目录(从内核的角度来看,目录也是文件,是其他文件的入口点)信息。举个例子,如果想让用户在设备文件上执行write操作,必须在驱动中实现与write函数对应的回调函数,并把它添加到绑定在设备上的。,为用户空间提供一组可以在该设备上执行的操作(函数)。

2024-02-09 23:37:04 833

原创 【Linux】内核定时器

介绍Linux内核中的定时器以及如何使用

2024-02-07 18:45:45 1145 1

原创 【Linux】内核中的链表

Linux内核中的链表

2024-02-05 21:12:37 509 1

原创 【Linux】container_of宏

container_of宏的介绍

2024-02-05 16:16:36 1019 1

原创 【Linux】构建模块

如何构建一个模块

2024-02-05 11:54:31 579 3

原创 【Linux】模块参数

Linux模块之模块参数

2024-02-05 11:52:03 570 1

原创 【Linux】模块出入点与模块信息

模块出入点与模块信息

2024-02-04 16:25:55 449 1

原创 【Linux内核编译】编译linux4.1内核问题总结

解决linux内核编译时遇到的linux/compiler-gcc11.h:没有那个文件或目录和kernel/bounds.c:1:0: error: code model kernel does not support PIC mode两个问题

2024-02-02 23:51:29 604

原创 【Linux】初识模块

简单介绍了Linux驱动开发的基础——模块的相关概念以及使用方法

2024-02-02 12:09:52 393

原创 【Linux】设备驱动开发环境配置

介绍Linux设备驱动开发的环境配置及内核约定

2024-02-01 12:28:41 1167 1

原创 Android 集成firefox浏览器内核GeckoView

Android 集成firefox浏览器内核GeckoView代替使用系统自带的浏览器内核,可以大幅度提高app的性能。

2024-01-30 13:42:58 2439 1

原创 【Linux】Linux开发常用api

记录了linux开发中比较常用的几个api

2024-01-30 10:26:17 1847 1

原创 【Linux】Linux常用操作指令

记录了一些linux常用的操作指令

2024-01-30 10:21:12 195 1

原创 如何清理C盘

一些清理C盘的方法

2023-11-22 21:17:44 951

原创 win10下如何使用的debug

win10下如何使用debug

2023-03-01 22:59:18 2977 1

原创 win10的edge浏览器找不到internet属性怎么解决?

win10的edge浏览器找不到internet属性解决方法

2022-12-27 18:59:54 1200 3

v86虚拟机使用样例demo

v86虚拟机使用样例demo,包括测试源代码以及操作系统镜像等资源。

2024-02-18

Linux设备驱动开发学习笔记(下)

在系统学习Linux的过程中的,Linux设备驱动开发学习的笔记,笔记有两部分,这是下篇,主要学习内容是《Linux设备驱动开发详解》的7-9章。

2024-02-16

Linux设备驱动开发学习笔记(上)

在系统学习Linux的过程中的,Linux设备驱动开发学习的笔记,笔记有两部分,这是上篇,主要学习内容是《Linux设备驱动开发》的1-4章,其中第4章是重点。

2024-02-09

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除