- 博客(15)
- 收藏
- 关注
原创 详解Linux中free命令,查看系统内存使用情况
点击打开链接 http://www.linuxintheshell.org/2012/06/05/episode-008-free-understanding-linux-memory-usage/
2014-04-22 21:25:21 751
原创 kernel studying log(初学,轻拍,间断学习更新)
函数最多不超过两屏 局部变量最多不超过10个 /var/log/messages 这个内核代码输出的日志文件,和模块代码中输出的分级别的log “定期器超时函数的执行不属于任何进程上下文”,怎样理解呢? 这个没搞明白 如果用户设置了一个超时函数,是无限循环或者阻塞,那么定时器队列上剩余的定时器将受到严重影响? 这是显然的 内核定期遍历定时器队列的是由中断触发的? 不
2013-10-13 11:43:32 743 1
原创 valgrind
1、获取valgrind-3.3.1.tar.bz2,并解包 2、进入valgrind-3.3.1目录运行./configure 3、编译valgrind-3.3.1,运行make 4、安装valgrind-3.3.1,使用root用户运行make install 5、设置环境变量,将/usr/local/bin/加入到path路径中 6、使用valgrind执行被检程序 val
2013-09-26 20:52:07 881
原创 when execute the ASM "LOCK" prefix, are all the memory being locked or are the relevant area in the
In multi-core system, when execute the ASM "LOCK" prefix on one CPU, *are all the memory being locked from other CPUs* or *are the relevant area in the memory being locked from other CPUs*? 想在st
2013-08-07 20:40:47 1147
转载 snprintf()函数返回值“陷阱”
我最近优化一个Linux-C小程序,用snprintf()函数往数组(或字符串)里写入数据。我不用sprintf()是因为它不够安全,不小心就会内存溢出,导致“段错误”!我认识并使用snprintf()很久了,但今天才完全明白了它的返回值的意思。 函数原型: int snprintf(char *str, size_t size, const char *format, ...);
2012-11-26 16:14:15 952
原创 va_start和va_end使用详解
http://blog.csdn.net/zxianrong/article/details/3706405 http://www.cnblogs.com/hanyonglu/archive/2011/05/07/2039916.html http://blog.csdn.net/ast_224/article/details/3906167 http://www.cnbl
2012-11-26 11:18:29 503
转载 明白了“extern”,通过例子理解(ZZ)
1、 声明外部变量 现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是 互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部。下面举一个简单的例子。创建一个工程,里面含有A.cpp和B.cpp两个简单的C++源文件: //A.cpp int i; void main() { }
2012-08-16 00:05:21 456
转载 练习
/******************************************************************************************************************** Copyright (C) Huawei Technologies Co., Ltd. 2012-2020. All ri
2012-08-03 19:49:41 662
原创 Fork()非常好的例子
#include int main(void) { int p1; putchar(x); while((p1=fork())==-1); if(p1==0) printf("b"); else printf("a"); printf("y"); }结果不是xxbyay,而是xbyxay,为什么呀。。 因为标准输出是line buffered程序真正分支的开始是fork以后的代
2011-06-28 22:01:00 1078
转载 fork
fork简介: fork英文原意是“分岔,分支”的意思,而在操作系统中,乃是著名的Unix(或类Unix,如Linux,Minix)中用于创建子进程的系统调用。【NOTE1】fork () 的作用是什么?换句话说,你用 fork () 的目的是什么?――是为了产生一个新的进程,地球人都知道 :)产生一个什么样的进程?――和你本来调用 fork () 的那个进
2011-06-28 22:00:00 512
原创 进程和线程
(每个进程有自己的独立的虚拟地址空间,切换进程可能要更换页表,TLB等很多进程恢复需要的信息) 在32位的Windows系统中,术语多任务是指系统可以同时运行多个进程,而每个进程也可以同时执行多个线程。 进程就是应用程序的运行实例。每个进程都有自己私有的虚拟地址空间。每个进程都有一个主线程,但可以建立另外的线程。进程中的线程是并行执行的,每个线程占用CPU的时间由系统来划分。
2011-06-23 21:38:00 479
转载 面试时,你会问面试官哪些问题?
明天又要去参加一次面试。每次面试的时候,面试官都会在最后给面试者一些时间,来问问题。这是个非常好的机会,能按照自己的思路,来了解职位、技术、企业文化、福利待遇、企业状况和前景等情况,以弥补前面面试过程中没有了解到的情况。但较早以前面试准备不太充分,虽然也能地问上一些问题,但挂一漏万,每次回来后,总觉得对企业、对职位没有完全了解清楚,不能依此作出很理性的决断。去?还是不去?往往还是靠大概
2011-06-12 13:20:00 613
转载 谈一谈网络编程学习经验(06-08更新)
谈一谈网络编程学习经验 陈硕 [email protected] blog.csdn.net/Solstice 2011-06-08 PDF 版下载:https://github.com/downloads/chenshuo/documents/LearningNetworkProgramming.pdf本文谈一谈我在学习网络编程方面的一些个人经验。“网络编程”
2011-06-12 13:18:00 884
转载 可重入函数与不可重入函数(转)
<br /><br />主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能运行在多任务环境下的。<br />也可以这样理解,重入即表示重复进入,首先它意味着这个函数可以被中断,其次意味着它除了使用自己栈上的变量以外不依赖于任何环境(包括static),这样的函数
2011-06-01 23:30:00 417
转载 Linux环境进程间通信系列(二):信号
<br /><br />1. 信号(上)<br />linux信号机制远远比想象的复杂,本文力争用最短的篇幅,对该机制做了深入细致的分析。读者可以先读一下信号应用实例(在信号(下)中),这样可以对信号发送直到相应的处理函数执行完毕这一过程有个大致的印象。本文尽量给出了较新函数的应用实例,着重说明这些的功能。<br />一、信号及信号来源<br />信号本质<br />信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通
2011-06-01 23:16:00 447
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人