unix系统学习
被驱动
linux
展开
-
find 命令
find [起始目录] 寻找条件 操作还有种表述方式:find PATH OPTION [-exec COMMAND { } \;]因为find命令会根据我们给的option,也就是寻找条件从我们给出的目录开始对其中文件及其下子目录中的文件进行递归搜索,所以我觉的这个地方说是“起始目录”是非常好的。该命令中的寻找条件可以是一个用逻辑运算符 not、and、or 组成的复合条转载 2013-11-16 15:17:28 · 423 阅读 · 0 评论 -
Linux内核网络协议栈笔记
Linux内核网络协议栈笔记参考文献《Understanding Linux Network Internals》中用了整整一章(part II)来介绍system initialization。本文只提供一个简单的概述,如果需要详细信息,还请看参考文献。我们这里所说的初始化过程指的是从硬件加电启动,到可以从网络接收或发送数据包之前的过程。在Linu转载 2013-12-22 14:14:53 · 1224 阅读 · 0 评论 -
网络编程常用API
1、socket(family,type,protocol)当我们在开发网络应用程序时,使用该系统调用来创建一个套接字。该API所做的工作如下所示:struct socket { socket_state state; //socket状态 unsigned long flags; //标识,转载 2013-11-30 22:22:30 · 1006 阅读 · 0 评论 -
linux 文件描述符表 打开文件表 inode vnode
在Linux中,进程是通过文件描述符(file descriptors,简称fd)而不是文件名来访问文件的,文件描述符实际上是一个整数。Linux中规定每个进程能最多能同时使用NR_OPEN个文件描述符,这个值在fs.h中定义,为1024*1024(2.0版中仅定义为256)。每个文件都有一个32位的数字来表示下一个读写的字节位置,这个数字叫做文件位置。每次打开一个文件,除非明确要求,否则转载 2013-11-30 16:43:54 · 904 阅读 · 0 评论 -
linux网络协议栈纲要
Linux 网络协议栈纲要 2012-03-20 20:48:27分类: LINUXLinux网络核心架构 Linux的网络架构从上往下可以分为三层,分别是 : 用户空间的应用层。 内核空间的网络协议栈层。 物理硬件层。 其中最重要最核心的当然是内核空间的协转载 2013-11-30 20:57:41 · 597 阅读 · 0 评论 -
linux inet_aton inet_ntoa
点分十进制格式的IP地址和32bit的IP地址 我们常见的IP地址都是以点分十进制格式表示,例如“172.18.1.231”。而在程序中基本是以如下的结构表示一个IP:struct in_addr { __be32 s_addr; //其实就是一个32bit的数字}; 它和点分十进制格式的IP地址转载 2013-11-29 08:55:43 · 639 阅读 · 0 评论 -
linux网络原始套接口
基于原始套接字编程 在开发面向连接的TCP和面向无连接的UDP程序时,我们所关心的核心问题在于数据收发层面,数据的传输特性由TCP或UDP来保证: 也就是说,对于TCP或UDP的程序开发,焦点在Data字段,我们没法直接对TCP或UDP头部字段进行赤裸裸的修改,当然还有IP头。换句话说,我们对它们头部操作的空间非常受限,只能使用它们已经开放给我们的诸如源、目的I转载 2013-11-29 09:14:37 · 893 阅读 · 0 评论 -
makefile的全面深入浅出教程
最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比转载 2013-11-26 19:27:53 · 767 阅读 · 0 评论 -
关于send,recv,sendto,recvfrom
send函数int send( SOCKET s, const char FAR *buf, int len, int flags ); 不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。该函数的第一个参数指定发送端套接字转载 2013-11-06 13:25:11 · 489 阅读 · 0 评论 -
路由套接口 unp17
在路由器接口中支持三种类型的操作1. 进程能通过写路由套接口向内核发消息。2. 进程能在路由套接口上从内核读消息,这是核心通知进程已收到一个ICMP重定向消息并进行了处理的方式。3. 进程可以用sysctl函数得到路由表或列出所有已配置的接口。17.2. 数据链路套接口地址结构在路由套接口上返回的一些消息中包含数据链路套接口地址结构,他在定义转载 2013-11-19 18:32:55 · 872 阅读 · 0 评论 -
emacs配置
本节主要参考: 曹乐的《在Emacs下用C/C++编程》 王纯业的《Emacs 一个强大的平台》 emacswiki.orgemcas难学易用,可扩展性强。有人把她当作信仰,有人认为他是魔鬼!学习首先记住基本的键盘快捷键,学会常用插件,深入学习还需学习lisp语言。本节紧对emacs作为开发环境做一个基本的介绍。基本安装设置请参考:Ubuntu转载 2013-11-17 21:53:15 · 1356 阅读 · 0 评论 -
linux 环境变量和库文件搜索路径
Linux中有关编译链接要是用的库扫描路径,与有关环境变量静态库链接时搜索路径顺序:1.ld会去找GCC命令中的参数-L2.再找gcc的环境变量LIBRARY_PATH3.再找内定目录 /lib /usr/lib /usr/local/lib 这是当初compile gcc时写在程序内的动态链接时、执行时搜索路径顺序:1.编译目标代码时指定的动态库搜转载 2013-11-16 16:34:22 · 1882 阅读 · 0 评论 -
linux网络协议栈
初探Linux网络协议栈ripwu Programming >> kernel , TCP/IP , unp Permalink 11.09.4 5,057 views 1 comment一点声明原文链接: http://www.ecsl.cs.sunysb.edu/elibrary/linux/network/LinuxKernel.pdf译者注:转载 2013-11-30 22:41:44 · 1561 阅读 · 1 评论