- 博客(11)
- 资源 (4)
- 收藏
- 关注
转载 linux常用查看硬件设备信息命令
# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -t
2014-02-28 20:36:48 939
转载 linux rtc驱动
Linux的RTC驱动相对还是比较简单的,可以将它作为一个普通的字符型设备,或者一个misc设备,也可以是一个平台设备,这都没有关系,主要还是对rtc_ops这个文件操作结构体中的成员填充,这里主要涉及到两个方面比较重要: 1. 在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linu
2014-02-25 17:15:10 1312
原创 深入理解linux网络技术内幕--通知链
一 通知链概述: 大多数内核子系统都是相互独立的,因此某个子系统可能对其它子系统产生的事件感兴趣。为了满足这个需求,也即是让某个子系统在发生某个事件时通知其它的子系统,Linux内核提供了通知链的机制。通知链表只能够在内核的子系统之间使用,而不能够在内核与用户空间之间进行事件的通知。通知链表是一个函数链表,链表上的每一个节点都注册了一个函数。当某个事情发生时,链表上所有节点对应的函数就会
2014-02-24 20:11:02 1813 1
原创 linux网络学习之分配net_device结构体
一 网络设备利用net_device结构体来定义,该结构体定义在头函数:kernel/linux/netdevice.h,该结构体的使用函数定义在函数:kernel/net/core/dev.c中: 该结构体是有函数:alloc_netdev_mps进行分配。二 alloc_netdev_mps函数解析: 1 函数原型:struct net_device *alloc
2014-02-24 08:54:04 6237 1
原创 linux下PCI设备驱动程序之注册详解
一 识别方式: 天朝为了方便每个人的管理,搞了一套身份识别的玩意(档案和身份证)。kernel本省就像一个社会,每个进来的设备必须要有它独特的名字和一些档案。这个工作对PCI来说,它是由pci_device_id这个结构体来进行身份信息保存的: 17 struct pci_device_id { 18 __u32 vendor, device; /* Vend
2014-02-22 13:33:22 3834
原创 Linux内核态与用户态进程通信方法-用户上下文
运行在用户上下文环境中的代码是可以阻塞的,这样,便可以使用消息队列和 UNIX 域套接字来实现内核态与用户态的通信。但这些方法的数据传输效率较低,Linux 内核提供 copy_from_user()/copy_to_user() 函数来实现内核态与用户态数据的拷贝,但这两个函数会引发阻塞,所以不能用在硬、软中断中。一般将这两个特殊拷贝函数用在类似于系统调用一类的函数中,此类函数在使用中往往"穿梭
2014-02-19 19:53:09 6350 2
原创 解决隐式声明与内建函数不兼容问题
一 运行一段带有memset,memcpy等函数操作的代码,编译器上报如下错误:netlink-exam-user-send.c: 在函数‘main’中:netlink-exam-user-send.c:39: 警告: 隐式声明与内建函数‘memset’不兼容netlink-exam-user-send.c:54: 警告: 隐式声明与内建函数‘memcpy’不兼容netlink-e
2014-02-19 08:23:04 20099
转载 套接字中的数据转换(大端模式/小端模式)
通常使用的有两种数据类型:短型(两个字节)和长型(四个字节)。 下面介绍的这些转换函数对于这两类的无符号整型变量都可以正确的转换。 如果你想将一个短型数据从主机字节顺序转换到网络字节顺序的话,有这样一个函数htnos: 它是以"h”开头的,代表“主机”; 紧跟着它的是"to",代表“转换到”; 然后是"n",代表“网络”; 最后是"s
2014-02-17 08:29:23 1476
转载 通过proc文件系统输出必要的Linux内核信息(下)
3、使用seq_file接口的例子 本例通过/proc/seq_file_test文件输出Linux内核的十个随机数,并与printk打印的信息进行比较。 (1)、例子源代码 [cpp] view plaincopyprint?#include #include #include #include #include
2014-02-15 10:12:09 949
转载 通过proc文件系统输出必要的Linux内核信息(中)
2、使用旧式proc接口的例子 本示例比较简单,先通过kmalloc函数分配一段TANGLINUX_LEN大小的内存,然后通过tanglinux_read和tanglinux_write函数来实现对这段内存的读写操作。 (1)、例子源代码 [cpp] view plaincopyprint?#include #include #inc
2014-02-15 10:11:05 1131
转载 通过proc文件系统输出必要的Linux内核信息(上)
开发平台:Ubuntu 11.04 编译器:gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4) 内核源码:linux-2.6.38.8.tar.bz2 proc是基于内存的文件系统,用来实现外界与Linux内核的信息交互(通过/proc目录下的各种文件)。 1、proc文件系统的初始化 proc文
2014-02-14 13:31:45 1489
原版英文教材《Beginning SQL》作者Paul Wilton and John W. Colby
2010-12-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人