- 博客(12)
- 收藏
- 关注
转载 Unix系统的五种I/O模型
Unix下共有五种I/O模型: 1. 阻塞式I/O 2. 非阻塞式I/O 3. I/O复用(select和poll) 4. 信号驱动式I/O(SIGIO) 5. 异步I/O(POSIX的aio_系列函数)io请求分两步: 1. 先将数据从存储介质(磁盘,网络等)拷贝到内核缓冲区,此时称为数据准备好,可以被用户应用程序读取。 2. 由用户应用程序拷贝内核缓冲区中...
2016-08-10 13:48:00
163
转载 git使用方法
前几天偶然看到了一张关于git使用的很好的图片,贴出来共享一下。图片的占地面积比较大,导致有一点压缩,可以保存到本地或者在新标签打开图片,可以放大。 这个图中最重要的是知道你当前的位置,然后就知道下一步操作需要输入什么指令了,入门过git的应该都能看明白,有什么不对的或者不明白的欢迎留言讨论。 最下面的一部分是github的使用,不是很详细,可以再看一下别的,现在gith...
2016-07-11 10:44:00
114
转载 linux下的系统调用函数到内核函数的追踪
使用的 glibc : glibc-2.17 使用的 linux kernel :linux-3.2.07系统调用是内核向用户进程提供服务的唯一方法,应用程序调用操作系统提供的功能模块(函数)。用户程序通过系统调用从用户态(user mode)切换到核心态(kernel mode ),从而可以访问相应的资源。这样做的好处是:为用户空间提供了一种硬件的抽象接口,使编程更加容易。有利于...
2016-06-22 09:59:00
1545
转载 linux awk用法(主要为命令行)
简介awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。awk其名称得自于它的创始人 Alfre...
2016-05-16 22:59:00
121
转载 Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:$echo $$运行结果8949特殊变量列表变量含义$0当前脚本的文件名$n传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例...
2016-04-26 13:39:00
93
转载 Linux文件描述符和常见文件操作函数
文件描述符对于内核而言,所有打开的文件都通过文件描述符引用。文件描述符是一个非负整数。当打开一个现有文件或创建一个新文件时,内核向进程返回一个文件描述符。当读或写一个文件时,使用open或creat返回的文件描述符标识该文件,将其作为参数传递给read或write。 按照惯例,UNIX系统shell使用文件描述符0与进程的标准输入相关联,文件描述符1与标准输出相关联...
2015-10-22 15:12:00
331
转载 int main(int argc,char* argv[])详解
argc是命令行总的参数个数argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数是命令行后面跟的用户输入的参数。 1 #include <stdio.h> 2 3 int 4 main(int argc, char *argv[]){ 5 int i = 0; 6 7 printf("...
2015-10-21 13:47:00
131
转载 Linux文件查找命令find
【转载】原文地址http://www.cnblogs.com/mchina/archive/2012/07/02/2573313.html下面给出find命令的主要应用示例: /> ls -l #列出当前目录下所包含的测试文件 -rw-r--r--. 1 root root 48217 Nov 12 00:57 install.log -rw-r--r...
2015-10-20 16:55:00
198
转载 Source Insight 常用设置和快捷键大全
最后有福利,最后有福利,最后有福利1.括号配对高亮:“在前括号左侧,后括号左侧” 双击鼠标左键,可以选定匹配括号和其中内容(<>,(),L{R},[]之间)2.让{ 和 } 不缩进:Options -> Document Options -> Auto Indenting -> Auto Indent Type 选 Simple还有:让...
2015-08-04 10:11:00
203
转载 glib库双向链表GList介绍
在上一篇文章里我介绍了glib库中单向链表的用法,这篇文章介绍glib库双向链表的用法,还是沿用上一篇文章的风格,采用在代码中加入注释来说明代码,最后贴出程序的运行结果,然后加以少量说明。双向链表与单向链表的区别是,从一个节点,不仅能访问到它的下一个节点,还能访问到它的上一个节点,其定义如下:structGList{ gpointerdata; GList*ne...
2015-08-04 09:36:00
484
转载 开源的许可证GPL、LGPL、BSD、Apache 2.0的通俗解释
你对开源有多少了解呢?如果你是软件开发者,要开源软件,不单单是开放源代码就可以了,选择一种许可证很重要,一个许可证之于软件就相当于价值观之于普通人,代表了这个软件的基本品性。一个错误的许可证选择可能会直接导致整个项目的失 败,XFree86就是一个好例子。各种开源的许可证主要的限制还是在redistribution(发布),所以个人/商业公司开发的软件包含了GPL的代码,只要你不发布...
2015-07-12 19:37:00
85
转载 linux内核模块Makefile的解析
Linux内核是一种单体内核,但是通过动态加载模块的方式,使它的开发非常灵活 方便。那么,它是如何编译内核的呢?我们可以通过分析它的Makefile入手。以下是 一个简单的hello内核模块的Makefile.ifneq ($(KERNELRELEASE),)obj-m:=hello.oelseKERNELDIR:=/lib/modules/$(shell unam...
2015-04-01 16:00:00
106
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人