自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (2)
  • 收藏
  • 关注

转载 TASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE 的区别

文章转自:http://blog.sina.com.cn/s/blog_548b0a230100dy9o.htmlTASK_INTERRUPTIBLE 和TASK_UNINTERRUPTIBLE 的区别TASK_INTERRUPTIBLE是可以被信号和wake_up()唤醒的,当信号到来时,进程会被设置为可运行。而TASK_UNINTERRUPTIBLE只能被wake_up()唤醒。

2013-07-22 19:36:40 985

原创 KERNEL BUG: unable to handle kernel NULL pointer dereference at 00000004

出现kenel BUG信息:BUG: unable to handle kernel NULL pointer dereference at 00000004IP: [] firmware_loading_store+0x55/0x170*pdpt = 0000000018ea2001 *pde = 0000000000000000Oops: 0000 [#1] PREEMPT S

2013-07-22 19:06:15 9549

转载 大小端问题

#include #include typedef union{ unsigned char x1; int x ;}endian;int main(int agrc, char *argv[]){ int x = 1 ; endian endian1; if(*(char *)&x == 1) printf("little endian!/n"); else printf("

2010-11-16 17:59:00 576

转载 C可变参数

C语言编程中有时会遇到一些参数个数可变的函数,例如printf()函数,其函数原型为: int printf( const char* format, ...); 它除了有一个参数format固定以外,后面跟的参数的个数和类型是可变的(用三个点“…”做参数占位符),实际调用时可以有以下的形式: printf("%d",i); printf("%s",s); printf("the number is %d ,string is:%s", i, s);    一个简单的可变参数的C函数      先看例子程序

2010-11-16 14:00:00 349

转载 I/O端口

<br />每个连接到I/O总线上的设备都有自己的I/O地址集,即所谓的I/O端口(I/O port)。在IBM PC体系结构中,I/O地址空间一共提供了65,536个8位的I/O端口。可以把两个连续的8位端口看成一个16位端口,但是这必须是从偶数地址开始。同理,也可以把两个连续的16位端口看成一个32位端口,但是这必须是从4的整数倍地址开始。有四条专用的汇编语言指令可以允许CPU对I/O端口进行读写:它们分别是in、ins、out和outs。在执行其中的一条指令时,CPU使用地址总线选择所请求的I/O端口

2010-11-12 10:13:00 827

转载 字节对齐

<br />在最近的项目中,我们涉及到了“内存对齐”技术。对于大部分程序员来说,“内存对齐”对他们来说都应该是“透明的”。“内存对齐”应该是编译器的“管辖范围”。编译器为程序中的每个“数据单元”安排在适当的位置上。但是C语言的一个特点就是太灵活,太强大,它允许你干预“内存对齐”。如果你想了解更加底层的秘密,“内存对齐”对你就不应该再透明了。<br />一、内存对齐的原因<br />大部分的参考资料都是如是说的:<br />1、平台原因(移植原因):不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平

2010-11-11 17:44:00 1137

转载 dup,dup2,fcntl,ioctl用法简述

<br />1、dup和dup2函数<br />    dup和dup2系统调用都可以用来复制文件描述符,在Shell下输入“man dup”可获取它们的函数原型如下:<br />#include <unistd.h><br />int dup(int oldfd);<br />int dup2(int oldfd,int newfd);<br />    dup用来复制参数oldfd所指的文件描述符。当复制成功时,返回最小的尚未被使用的文件描述符。若有错误则返回-1,错误代码存入errno中,详细的错误代

2010-11-11 09:43:00 2340 1

转载 同步与异步,阻塞与非阻塞

同步/异步与阻塞/非阻塞的区别.这两组概念常常让人迷惑,因为它们都是涉及到IO处理,同时又有着一些相类似的地方.首先来解释同步和异步的概念,这两个概念与消息的通知机制有关.举个例子,比如我去银行办理业务,可能选择排队等候,也可能取一个小纸条上面有我的号码,等到排到我这一号时由柜台的人通知我轮到我去办理业务了.前者(排队等候)就是同步等待消息,而后者(等待别人通知)就是异步等待消息.在异步消息处理中,等待消息者(在这个例子中就是等待办理业务的人)往往注册一个回调机制,在所等待的事件被触发时由触发机制(在这里是

2010-11-10 11:12:00 349

转载 linux进程状态

linux进程状态浅析众所周知,现在的分时操作系统能够在一个CPU上运行多个程序,让这些程序表面上看起来是在同时运行的。linux就是这样的一个操作系统。<br />  在linux系统中,每个被运行的程序实例对应一个或多个进程。linux内核需要对这些进程进行管理,以使它们在系统中“同时”运行。 linux内核对进程的这种管理分两个方面:进程状态管理,和进程调度。本文主要介绍进程状态管理,进程调度见《linux进程调度浅析》。<br />  进程状态<br />  在linux下,通过ps命令我们能够

2010-11-10 10:56:00 319

转载 JNI简介

<br />     首先引用一篇文章,介绍一个简单的JNI的调用的过程。<br />  JAVA以其跨平台的特性深受人们喜爱,而又正由于它的跨平台的目的,使得它和本地机器的各种内部联系变得很少,约束了它的功能。<br />解决JAVA对本地操作的一种方法就是JNI。<br />  JAVA通过JNI调用本地方法,而本地方法是以库文件的形式存放的(在WINDOWS平台上是DLL文件形式,在UNIX机器上是SO文件形式)。<br />通过调用本地的库文件的内部方法,使JAVA可以实现和本地机器的紧密联系,调用

2010-11-09 15:01:00 283

转载 内存开始1M地址空间,用户空间和内核空间

<br />存储器(仅指内存)分为rom和ram,在物理上是独立的器件,cpu操作他们时,都做为内存来处理,把他们总的看作一个若干存储单元构成的逻辑存储器,这个逻辑存储器就是我们所说的内存地址空间<br />8086的内存地址空间分布如下:<br />0x00000-0x9ffff 为主存(ram)<br />0xa0000-0xbffff为显存地址空间<br />0xc0000-0xfffff为各类rom地址空间<br />bios(各个部件的,包括主板,显卡,网卡等)使用rom存储,所以存储在第三段地址

2010-11-09 14:17:00 2812

转载 linux调试

<br />    http://www.itqun.net/content-detail/72062.html<br />    调试信息的输出方法有很多种, 例如直接用printf, 或者出错时使用perror, fprintf等将信息直接打印到终端上, 在Qt上面一般使用qDebug,而守护进程则一般是使用syslog将调试信息输出到日志文件中等等... <br />  使用标准的方法打印调试信息有时候不是很方便, 例如Qt编程, 在调试已有的代码时, 我想在打印调试信息的地方, 把代码位置也打印出来

2010-11-09 11:01:00 645

深入理解计算机系统 答案

深入理解计算机系统 答案 深入理解计算机系统 答案

2012-04-17

深入理解计算机系统

深入理解计算机系统 绝对的高清版 比网络上其它一些书籍都要清晰

2012-04-17

空空如也

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

TA关注的人

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