自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(192)
  • 资源 (14)
  • 收藏
  • 关注

原创 Debian 6 selinux环境的配置

一、应用层工具的安装1、首先用DVD1安装完Debian系统2、在安装完后,确保系统能够联网       在【系统管理】-->【软件源】中, 选择【Debian software】选项: 中国的服务器, 把钩全打上;       在【系统管理】-->【软件源】中, 选择【update】选项:将【安全更新】和【最近更新】选上。        点 【关闭】按钮,此时系统开始检查更新

2012-09-18 15:45:07 3541

转载 Linux内核调试方法

Linux内核调试方法kdb:只能在汇编代码级进行调试;  优点是不需要两台机器进行调试。  gdb:在调试模块时缺少一些至关重要的功能,它可用来查看内核的运行情况,包括反汇编内核函数。  kgdb:能很方便的在源码级对内核进行调试,缺点是kgdb只能进行远程调试,它需要一根串口线及两台机器来调试内核(也可以是在同一台主机上用vmware软件运行两个操作系统来调试)

2012-08-10 14:07:28 2256

转载 linux 内核调试指南

linux内核调试指南一些前言作者前言知识从哪里来为什么撰写本文档为什么需要汇编级调试***第一部分:基础知识***总纲:内核世界的陷阱源码阅读的陷阱代码调试的陷阱原理理解的陷阱建立调试环境发行版的选择和安装安装交叉编译工具bin工具集的使用qemu的使用

2012-08-10 09:18:38 11879 2

原创 debug assertion failed

遇到这中问题, 从字面上看好像是”宏调试失败“, 但是却不是这回事。 出现此种问题,一般是:内存泄露(可能你没发现, 好好扫雷); 野指针问题。

2012-08-10 08:22:27 794

转载 kthread_create与kernel_thread的区别

kernel thread可以用kernel_thread创建,但是在执行函数里面必须用daemonize释放资源并挂到init下,还需要用completion等待这一过程的完成。kthread_create是比较正牌的创建函数,这个不必要调用daemonize,用这个创建的kernel thread都挂在了kthread线程下。从表面上来看,这两个函数非常的类似,但是实现却是相差甚远

2012-08-02 10:40:49 995

转载 Linux内核进程 线程 用户空间线程进程

这个概念是很多人都混淆的了,我也是,刚开始无法理解OS时,把Linux内核也当做一个进程。其实内核本身不是以进程形式存在的,最多在初始化的过程中表现得就像一个进程,但是内核绝对没有进程的数据结构task_struct,可以严格跟进程区分开 。自从创建init 进程之后,内核就不再主动占有cpu了。只有当进程主动要求和中断到来时,内核才动一动,很快又把cpu还给合适的进程,不是想象中的,以后台服

2012-08-02 10:21:46 1053

转载 linux 内核进程 线程

Linux进程、线程问题    http://www.54xue.com/w/19/n-28919.html     2010年8月15日,今天研究的是Linux的进程管理,昨天是内存寻址,感慨颇深啊,《深入理解Linux内核》这本书真是浪得虚名,根本没有说到问题的本质,一些概念的由来、定义、区别以及联系,技术的原理,运行过程,整体结构,各部分衔接等等问题统统没有说明白,甚至根本没

2012-08-02 10:14:59 1258

转载 内核线程

http://blog.csdn.net/yunsongice/article/details/5522012 按照传统UNIX规定的一些操作系统标准,一些重要的任务需要由进程来周期性地执行。这些任务包括刷新磁盘高速缓存,交换出不用的页框,维护网络连接等等。那么,由于这些系统进程只运行在内核态,所以Linux将他改造了,跟一般的进程不一样了,给它取个名称叫内核线程(kernel threa

2012-07-31 11:07:12 648

转载 Linux 内核同步(2)

http://blog.sina.com.cn/s/blog_4cc4ab450100agn4.html在前面,我们介绍了常用两种内核同步技术:自旋锁和信号量。这里我们接着介绍其他的内核同步技术。内核同步技术前面我们提到,信号量是基于原子操作的,它的信号初始值count是一个原子类型,下面我们就对它做详细的介绍,同时我们还会讲解其他的内核同步技术。原子操作 原子

2012-07-30 19:52:53 707

转载 linux 内核同步 (1 )

http://blog.sina.com.cn/s/blog_4cc4ab450100afe9.html 序言就像我们在操作系统里学习的那样,如果多个程序(进程或线程)同时访问临界区数据就会发生竞争。存在竞争条件的程序会产生不可预料的结果。消除竞争的方法一般就是同步的访问临界区数据(原子访问)。Linux内核提供了多种技术用来实现内核同步操作。下面我们就分别介绍。内核同步技术

2012-07-30 19:51:35 1000

转载 DECLARE_COMPLETION 宏

completion是一种轻量级的机制,它允许一个线程告诉另一个线程工作已经完成。可以利用下面的宏静态创建completion:DECLARE_COMPLETION(my_completion);如果运行时创建completion,则必须采用以下方法动态创建和初始化:struct compltion my_completion;init_completion(&my_complet

2012-07-30 17:22:21 2594

转载 Linux File Permission

(转自chinaunix)好吧,我这里就我对 Linux  File Permission 的部份发表一下个人意见, 不见得完全正确,只希望提出来给大家一些参考。 ----------------------------- 1) Permission Mode 首先,File Permission Mode 是存在 inode 中的信息, 一共有 12 个 bit

2012-07-05 09:39:38 1233

原创 pam服务模块中获取用户名和密码

const void *user = NULL;const char *authtok = NULL;const char *prompt = NULL; //获得用户名密码的函数如下:pam_get_item(pamh, PAM_USER, &user); //get the userpam_get_authtok(pamh, PAM_AUTHTOK, &authtok,

2012-06-27 21:57:59 3784

原创 QT之问题1--QGtkStyle was unable to detect the current GTK+ theme

在目录/etc/X11/xinit/中, 在文件.xinitrc中添加一行:  (启动图形界面的配置文件就是 ~/.xinitrc )export GTK2_RC_FILES="$HOME/.gtkrc-2.0" 该问题即可解决。

2012-06-19 14:48:36 6464 2

原创 循环队列简单实现

#include #include #define MAX 5typedef struct{    int key;}element;int main(){    element list[MAX];    int rear = 0;    int front = 0;    int d, err;    element tm

2012-06-18 22:04:47 660

原创 栈的链接实现

#include #include typedef int DataType; struct node{ DataType info;    node * next;};int main(void){ struct node  *top,  *tep; int d;  top = (struct node *)malloc(sizeof(stru

2012-06-17 14:10:06 661

原创 Linux内核帮助文档的生成方法(Debian环境)

其实生成帮助文档很简单,但是就是系统默认没有按装xmlto软件和其依赖的软件。下面来说下如何安装xmlto软件:1、 首先下载xmlto软件(建议在debian的官网下载,因为你下载时下边列出了来xmlto的依赖软件和建议软件),下载依赖软件xsl软件, 我在自己的系统上3.2.4内核,只要这两个软件就可以了,如果不行,你make htmldocs时有提示, 然后按提示

2012-06-04 21:10:20 1373

原创 师兄师姐的求职经验谈

师兄师姐要毕业了, 给我们讲了一些宝贝的求职经验。为了记录,为了和大家分享,现记录如下:(注意:求职期间, 心态一定要好,不要着急,平时一定要锻炼好身体)。1. 个人找工作前的准备:找准自己的兴趣点和就职期望, 找准方向后 要努力为这个方向做努力。对没有目标的,也要尽力先把自己的专业做好,如果到毕业时,不想从事你的专   业,可以换。  师兄的一句话, “做实事

2012-06-01 21:30:58 1166

原创 动态开辟的链表 可以当做数组使用

#include #include #include int main(void){ int *p=NULL; int a = 2; p = (int *)malloc(sizeof(int)*5); memcpy(&p[2], &a, sizeof(int)); printf("%d  %#x\n", p[2], &p[2]); return 0;}

2012-05-19 16:51:59 788

原创 linux内核编程chapter6

VFS数据结构:1 、超级快结构        struct super_block{               unsigned char s_dirt; //vfs允许对超级块结构中的字段进行修改, 如果超级快结构中的信息可能发现与磁盘上的数据不同步。 这字段表示 需要同步。               struct list_head s_dirty; // 它指向该文件系

2012-05-15 18:06:41 614

原创 深入理解计算机系统 chapter-1(笔记)

1. 信息= 位+上下文      除了ascii 码表示的 是文本文件外, 其他的 都是 二进制文件。2. 程序加载    1). 有DMA : 程序先加载到内存(不经过CPU) , 然后 cpu 从内存 取指令 放到 程序指令计数器 (pc),    2)。无DMA: 程序先经 io 到 cpu的寄存器, 然后 加载到内存, 然后 cpu 从内存取指令放到 程序计数器 (pc)

2012-05-14 23:38:04 676

转载 揭开字符设备驱动程序的面纱

Linux驱动开发庖丁解牛之三——揭开字符设备驱动程序的面纱http://www.kuqin.com/article/04linux/1047068.htmlBy:dreamice 2008-11-23[email][email protected][/email]1.写在前面的话我们知道,在Linux设备驱动开发中,包括三大设

2012-04-24 22:17:30 794

转载 关于vfsmount的理解

http://www.cnblogs.com/Wandererzj/archive/2012/04/12/2444888.htmlstruct vfsmount { struct list_head mnt_hash; struct vfsmount *mnt_parent; /* fs we are mounted on */      struct dentry *mn

2012-04-22 17:19:51 4843 1

转载 linux vfs 解析 之 mount 文件系统 (下)

另外,对于Linux,可以将多个文件系统 mount 到同一个目录上,这样的话, 新 mount 的文件系统会覆盖原来mount的文件系统。比如我们再把一个 "/dve/hdb2" 的设备 mount 到 "/home/xpl"  目录下,这样,如果我们访问 "/home/xpl" 的时候,就会访问到 "/dev/hdb2"当新mount的文件系统被 unmount 之后,原来被覆盖的

2012-04-22 17:13:46 1180

转载 linux vfs 解析 之 mount 文件系统 (中)

找到了要 mount 的目录,下面就开始实际的mount过程mount的过程就是把设备的文件系统加入到 vfs 框架中1. 首先,要mount一个新的设备,需要创建一个新的 super block。 这通过要mount的文件系统的 file_system_type, 调用其 get_sb 方法来创建一个新的 super block2. 对于任何一个 mount 的文件系统,都要有一

2012-04-22 17:12:44 1534

转载 linux vfs 解析 之 mount 文件系统 (上)

http://blog.sina.com.cn/s/blog_5219094a0100calt.html~type=v5_one&label=rela_prevarticle   mount 文件系统主要数据结构:struct namespace { atomic_t  count;   struct vfsmount * root;  struct list_

2012-04-22 17:11:04 2214

原创 vc6.0命令行程序的调试——怎样输入命令行参数

调试时,先要设置vc工程,才能输入命令行 参数,如果不输入命令行参数,调试会出错误(一般显示为内存错误):  vc6.0 中的设置: project -->settings-->Debug(选项卡)-->Program Arguments. OK

2012-04-12 10:56:32 9035

转载 神奇的vfork()

在学习vfork的时候遇到了return与exit区别的问题: #includestdio.h>#includeerrno.h>#includeunistd.h>int main(void){pid_t pid;int ret = 0;if((pid= vfork()) 0)printf("Fork error:%s\n",s

2012-04-05 23:06:24 1386

转载 fork函数的两次返回和父子进程的执行顺序简介

http://hi.baidu.com/%CE%A8%C0%D6ice/blog/item/c78270ff877db72d5c600889.html 今天为了参加腾讯的面试,特地研究了一下fork的两次返回。大家都知道,调用fork后会返回两个值或者一个值。两个值是指在调用成功的情况下,返回0表示子进程在运行,大于0的数表示父进程在运行,错误情况下就返回一个值

2012-04-05 20:59:11 8325

转载 Debian 6.0.4安装配置lamp(Apache+MySQL+PHP)

l来源:http://www.osyunwei.com/archives/2372.html 准备篇:1、配置防火墙,开启80端口、3306端口说明:debian默认安装是没有开启任何防火墙的,为了服务器的安全,建议大家安装启用防火墙设置,这里推荐使用iptables防火墙。whereis iptables   #查看系统是否安装防火墙iptables: /sbin/ipt

2012-04-04 23:30:16 1833

原创 求第K个最大的数

#include #define N 100#define K 2int main(void){ int A[N]={1,2,3,4,5,6}; int B[N]; int count=0, i,maxval,col=0; for (i=0; i  B[i] = A[i]; while (count  {  maxval = B[0];  for

2012-04-03 15:19:34 826

转载 linux 驱动Makefile

先看一个最简单的驱动程序://hello.c[cpp] view plaincopyprint?#include    #include      MODULE_LICENSE("Dual BSD/GPL");    static int hello_init(void)  {      printk(KERN_ALERT "hello module!\n");

2012-03-21 16:02:20 5475

原创 ldd3 error: expected expression before 'spinlock_t' (access.c中)

这是由于,新内核的DEFINE_SPINLOCK(x)发生变化导致的。 这个宏的头文件 改static spinlock_t scull_u_lock =DEFINE_SPINLOCK(lock); 为 static DEFINE_SPINLOCK(scull_u_lock);

2012-03-20 22:55:28 1219

转载 ldd3 scull错误移除

由于linux内核版本的升级,往往会让能在老版本内核上编译通过的驱动程序移植到新版本内核中出现各种编译和链接错误,这里就将我遇到的一些问题做个整理,让后续开发更流畅^_^!当前内核版本为3.2.41.make[1]: Entering directory `/usr/src/linux-***' scripts/Makefile.build:49: *** CFLAGS was c

2012-03-20 15:44:11 942

转载 浏览内核源码工具

有网络的时候,使用LXR(The Linux Cross Referencer)在线阅读源码固然是一件很爽的事情。在无网络的情况下,只通过vim进入内核源码那样查找就显得有些勉强。接下来,本文将介绍一种快速定位源码的工具:ctags和cscope。通过vim编辑器,再配合使用上述两种工具就可以快速定位想要查看的源码。好了,开始吧!1.下载最新内核源码包,解压至主目录下接下来的步骤当然可以在

2012-03-20 14:50:50 855

转载 error: unknown field 'ioctl' specified in initializer (1)

linux2.6.29和linux2.6.38的内核在file_operations结构发生了变化,否则在linux2.6.38内核中,继续使用.ioctl成员,编译时就会报错:error: unknown field 'ioctl' specified in initializer,struct file_operations结构体定义在include/linux/fs.h文件中。lin

2012-03-20 13:30:13 4674

转载 error: unknown field ‘ioctl’ specified in initializer

异步通知的意思是:一旦设备就绪,则主动通知应用程序,这样应用程序就根本不需要查询设备的状态,这一点非常类似于硬件上的“中断”的概念,比较准确的称谓是“信号驱动的异步I/O”。信号是在软件层次上对中断机制的一种模拟,在原理上一个进程接收到一个信号与处理器接收到一个中断请求是一样的。1>在把驱动从2.6.32 移植到2.6.36时 报错 /home/kern

2012-03-20 11:34:40 1435

转载 linux设备驱动开发中有关scull模块的编译问题

来源:http://blog.csdn.net/laichao1112/article/details/6313040   昨天运行了一下《linux设备驱动程序》第三章的那个scull例子,发现出现如下错误提示:        error: linux/config.h: No such file or directory我的系统内核版本是2.6.35的,config.h这个头文件貌

2012-03-20 11:14:32 723

转载 Fix it to use EXTRA_CFLAGS. Stop.

来源:http://blog.csdn.net/snow25bz/article/details/6282877 LDD3 :1. 在linux2.6.34.1编译提示  Fix it to use EXTRA_CFLAGS.  Stop. 将makefile中的 CFLAGS 替换成 EXTRA_CFLAGS就可以了。原因是在2.6的内核的版本中所有的 EXTRA_ 变量只在

2012-03-20 11:00:54 1027

原创 虚拟机 桥接 连接状态总是 断开的解决 (debian)

虚拟机装的是Debian      但是,用桥接总是 显示 断开 ,其他正常设置。最后没办法了,然后,关掉Debian 配置硬件,新创建一个网络适配器,将原来的适配器删除掉。重新启动,ok,一切正常。

2012-03-08 11:32:45 6100

Python3.8手册-20190612.docx

python3.8学习手册,基于官网,加入了自己的理解

2019-08-08

SYSREPO简介.docx

sysrepo数据库,与netopeer集成使用,可以提供call home功能,实现sdwan netconf通道。

2019-05-27

手把手教你如何建立自己的linux系统.doc

LFS 构建 , 在文档中 对容易出错的地方进行了标出, 能够很容易的就完成lFS。

2012-11-30

算法导论(3th) 扫描 中文版

扫描的第三版 算法导论 中文版 , 是数据结构与算法的经典书籍

2012-11-15

多功能刻录软件 nero

安装版本 有破解机在里边, 中文版 绝对好用

2012-11-02

linux 内核模块

linux内核模块编写 例子程序 导出符号的使用

2012-10-22

linux 函数大全

linux 常用库函数 , 非常的方便查找和使用。

2012-10-21

linux 命令大全

linux的命令 , 包括各种命令 有分类, 非常方便查找。

2012-10-21

ip免费代理文件处理程序(c语言)

能够将网络上的ip代理格式字符序列转换成 代理猎手需要的验证文件格式,方便代理猎手处理文件。

2012-10-11

TC3.0汉化 免安装

绿色免安装, c c++编译器, TC3.0颖私公司 全屏显示

2012-09-05

路由破解器

可以破解路由密码,使用请注意法律问题,可以用作学习

2012-08-11

linux-3.2.4内核帮助文档DocBook

内核API 内核帮助文档 DocBook Linux编程

2012-06-04

統計學期末報告-問卷調查與分析

統計學期末報告-問卷調查與分析 統計學期末報告-問卷調查與分析

2010-06-26

空空如也

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

TA关注的人

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