
linux 内核编程(笔记)
djinglan
喜欢
展开
-
linux内核编程chapter6
VFS数据结构:1 、超级快结构 struct super_block{ unsigned char s_dirt; //vfs允许对超级块结构中的字段进行修改, 如果超级快结构中的信息可能发现与磁盘上的数据不同步。 这字段表示 需要同步。 struct list_head s_dirty; // 它指向该文件系原创 2012-05-15 18:06:41 · 647 阅读 · 0 评论 -
Linux内核源码分析方法
http://www.kuqin.com/linux/20130426/334148.html一、内核源码之我见Linux内核代码的庞大令不少人“望而生畏”,也正因为如此,使得人们对Linux的了解仅处于泛泛的层次。如果想透析Linux,深入操作系统的本质,阅读内核源码是最有效的途径。我们都知道,想成为优秀的程序员,需要大量的实践和代码的编写。编程固然重要,但是往往只编程的人很转载 2013-05-19 22:23:48 · 1138 阅读 · 0 评论 -
linux内核哈希表hlist
Linux内核哈希表分析与应用Author:tiger-johnTime:2012-12-20mail:jibo.tiger@gmail.comBlog:http://blog.youkuaiyun.com/tigerjb/article/details/8450995转载请注明出处。前言:1.基本概念:散列表(Hash table,也叫哈希表),是转载 2013-04-16 10:26:47 · 3446 阅读 · 0 评论 -
N)UMA 模型中的内存组织------《深入Linux内核架构》笔记
http://blog.youkuaiyun.com/daniel_ice/article/details/6833835UMA(一致内存访问,uniformmemory access): 计算将内存以连续的方式组织起来。SMP中每个cpu访问各内存区具有一样的速度NUMA(非一致内存访问,non-uniformmemory access):SMP中的各个cpu都有本地的内存,可支持快速访转载 2012-12-13 23:12:06 · 1840 阅读 · 0 评论 -
linux内核中内存管理数据结构关系及机制(原题:linux虚拟内存组织结构浅析)
http://blog.youkuaiyun.com/gxfan/article/details/2954928众所周知,linux内核支持绝大多数体系结构,因此linux内核必须采取一种与具体体系结构无关的方法来描述物理内存的组织结构,这个问题就是本系列文章要讨论的话题。 要理解linux虚拟内存在逻辑上的组织结构,我们首先要明白两个概念:UMA(Uniform Memory Access)转载 2012-12-13 15:29:55 · 1849 阅读 · 0 评论 -
ldd中Makefile的解释
# Comment/uncomment the following line to disable/enable debugging#DEBUG = y # Add your debugging flag (or not) to CFLAGS ifeq ($(DEBUG),y) DEBFLAGS =转载 2012-12-01 15:41:11 · 1451 阅读 · 0 评论 -
等待队列的原理与源码分析
等待队列(wait queue)用于使进程带等待某一特定的事件发生,而无需频繁的轮询操作,进程在等待时间内睡眠,在等待的事件发生时由内核自动唤醒。 一、 等待队列相关数据结构 每一个等待队列都由两部分组成:等待队列头(struct wait_queue_head_t)和等待队列成员(struct wait_queue)。struct __wait_queue_head转载 2012-11-05 21:28:16 · 1249 阅读 · 0 评论 -
wait_event_interruptible() 和 wake_up()的使用
http://www.newsmth.net/nForum/#!article/KernelTech/20731 1. 关于 wait_event_interruptible() 和 wake_up()的使用 读一下wait_event_interruptible()的源码,不难发现这个函数先将 当前进程的状态设置成TASK_INTERRUPTIBLE,然后调用sche转载 2012-11-05 20:35:19 · 19664 阅读 · 6 评论 -
Debian 下编译内核过程
1. 构建编译环境 (Debian 和 Ubuntu 发行版上用到的工具包) kernel-package :包括了make-kpkg等工具。 libncurses5-dev : make menuconfig 需要有此工具支持。 build-essential : 提供了c/c++的编译环境,包括了gcc、make等工具 (moduti原创 2012-03-06 12:38:07 · 2739 阅读 · 0 评论 -
copy_from_user函数详解
from:http://hi.baidu.com/wzt85/blog/item/1f29731ba4b317ffae513316.html copy_from_user函数的目的是从用户空间拷贝数据到内核空间,失败返回没有被拷贝的字节数,成功返回0.这么简单的一个函数却含盖了许多关于内核方面的知识,比如内核关于异常出错的处理.从用户空间拷贝数据到内核中时必须非常小心,转载 2012-09-28 10:41:32 · 2263 阅读 · 0 评论 -
Linux内核帮助文档的生成方法(Debian环境)
其实生成帮助文档很简单,但是就是系统默认没有按装xmlto软件和其依赖的软件。下面来说下如何安装xmlto软件:1、 首先下载xmlto软件(建议在debian的官网下载,因为你下载时下边列出了来xmlto的依赖软件和建议软件),下载依赖软件xsl软件, 我在自己的系统上3.2.4内核,只要这两个软件就可以了,如果不行,你make htmldocs时有提示, 然后按提示原创 2012-06-04 21:10:20 · 1418 阅读 · 0 评论 -
KGTP内核调试使用
分类: LINUXkgtp使用总结1,介绍:Kgtp项目主页是:http://code.google.com/p/kgtp/如其项目主页所描述,Kgtp是一个实时且轻量级的Linux跟踪内核调试工具。也许说是一个内核跟踪调试接口更合适,通过它来连通内核和GDB,使得GDB可以对内核进行跟踪调试。GDB既可以是在本机,也可以在另外一台机器上,甚至还可以进行离线调试,而这些转载 2013-11-11 10:45:06 · 2958 阅读 · 0 评论