- 博客(22)
- 资源 (17)
- 收藏
- 关注
转载 Linux文件系统(三)—— 文件系统常用工具介绍
<br />tune2fs--调整ext2/ext3文件系统特性的工具。 <br />-l <device> 查看文件系统信息 <br />-c <count> 设置强制自检的挂载次数 <br />-i <nday> 设置强制自检的时间间隔 <br />-m <percentage> 保留块的百分比 <br />-j 将ext2文件系统转换为ext3类型的文件系统 <br /><br />ext2文件系统不具备日志功能。将ext3文件系统转换为ext3类型就能为服务器增加日志功能,对
2010-12-31 16:20:00 1500
转载 Linux查看磁盘分区等命令和相关工具介绍
一、df 命令; df 是来自于coreutils 软件包,系统安装时,就自带的;我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置; 举例: [root@localhost beinan]# df -lh Filesystem 容量 已用 可用 已用% 挂载点 /dev/hda8 11G 6.0G 4.4G 58% / /dev/shm 236M
2010-12-31 15:56:00 2157
转载 Linux文件系统(一)—— Linux 文件系统剖析
M. Tim Jones, 顾问工程师, Emulex Corp.M. Tim Jones 是一名嵌入式软件工程师,他是 GNU/Linux Application Programming、AI Application Programming 以及 BSD Sockets Programming from a Multilanguage Perspective 等书的作者。他的工程背景非常广泛,从同步宇宙飞船的内核开发到嵌入式架构设计,再到网络协议的开发。Tim 是位于科罗拉多州 Lon
2010-12-31 15:25:00 1009
原创 TCP,UDP和IP分片
<br />1. IP分片<br /> <br />IP头的一部分为<br />++++++++++++++++++++++++++++++++++++++++++++++++<br />| 16 bit 标识 | 3 bit 标志 | 13 bit 片偏移 |<br />++++++++++++++++++++++++++++++++++++++++++++++++<br /> <br />对于IP层来说,收
2010-12-30 15:11:00 9874 3
原创 IP层
I P 数据报的格式如图 3 - 1 所示。普通的 IP 首部长为 20 个字节,除非含有选项字段。首部长度指的是首部占 32 bit 字的数目,包括任何选项。由于它是一个 4 比特字段,因此首部最长为 60 个字节。总长度字段是指整个 I P 数据报的长度,以字节为单位。利用首部长度字段和总长度字段,就可以知道 IP 数据报中数据内容的起始位置和长度。由于该字
2010-12-30 10:52:00 2265
原创 链路层
802.3规定数据部分必须至少为38字节,而对于以太网,则要求最少要有46字节,如果不足的话插入PAD;两种帧格式都采用48 bit(6字节)的目的地址和源地址;0800为IP数据报文,0806为arp报文,0835为rarp报文。 SLIP的全称是Serial Line IP。它是一种在串行线路上对I P数据报进行封装的简单形式,适用于家庭中每台计算机几乎都有的RS-232串行端口和
2010-12-30 10:45:00 877
原创 TCP/IP概述
<br /><br /><br />图1-4是TCP/IP协议栈中常见的协议,其中,虽然ICMP、IGMP和IP都是在网络层,但,ICMP、IGMP却是封装入IP进行传输的;ICMP被IP用来和其他主机或交换机等交互错误报文和其他重要信息,ping和traceroute用的ICMP,IGMP用于组播控制。<br /> <br />ARP和RARP虽然放在链路层,但他们和IP一样都有自己的链路层数据帧类型<br /> <br /> <br />当应用程序用T C P传送数据时,数据被送入协议栈中,然后逐个通过
2010-12-30 10:44:00 1392 1
转载 TCP/UDP 发送数据的数据长度单位
<br />基于消息的SOCKET最大的发送包大小为SO_MAX_MSG_SIZE(默认为65535, 即64K), 超过此值,SendTo函数将发送失败,失败信息为 WSAEMSGSIZE.但报文段大于MTU而没有大于SO_MAX_MSG_SIZE时,需要进行IP分片传输,同样这样在接收方,IP层需要组合包操作,并耗内存,一般来说要控制报文大小在小于或等于MTU的范围内,避开拆包和组包过程.<br />在TCP协议中,大的数据实际上可能经过两次分割:第一次是TCP协议会把数据分段已装入一个TC
2010-12-30 10:17:00 5637
转载 央行的主要货币政策
<br /><br />可供货币政策当局选择的货币政策工具通常有一般性货币政策工具、选择性货币政策工具和其他补充性货币政策工具三大类。<br />一是一般性货币政策工具。指以整个商业银行系统的资产运用与负债经营活动为对象,影响整个经济社会的信用和货币状况的货币政策工具,主要包括法定存款准备金、再贴现和公开市场业务。<br />二是选择性货币政策工具。指以某些商业银行的资产运用与负债经营活动或整个商业银行系统的资产运用与负债经营活动为对象,只影响某些特殊经济领域中的信用和货币状况的货币政策工具,主要有消费信用
2010-12-30 09:23:00 2421
原创 利用backtrace和backtrace_symbols打印函数的调用关系
<br />源程序如下<br />#include <stdio.h><br />#include <string.h><br />#include <stdint.h><br /><br />typedef uint32_t UINT32;<br /><br />void fun3(void)<br />{<br /> void* array[10] = {0};<br /> UINT32 size = 0;<br /> char **strframe = NULL;
2010-12-29 18:24:00 19422 4
转载 系统信号说明和应用
SIGHUP 终止进程 终端线路挂断SIGINT 终止进程 中断进程SIGQUIT 建立CORE文件终止进程,并且生成core文件SIGILL 建立CORE文件 非法指令SIGTRAP 建立CORE文件 跟踪自陷SIGBUS 建立CORE文件 总线错误SIGSEGV 建立CORE文件 段非法错误SIGFPE 建立CORE文件 浮点异常SIGIOT 建立CORE文件 执行
2010-12-29 17:21:00 884
转载 C运行时库
运行时库是程序在运行时所需要的库文件,通常运行时库是以LIB或DLL形式提供的。C运行时库诞生于20世纪70年代,当时的程序世界还很单纯,应用程序都是单线程的,多任务或多线程机制在此时还属于新观念。所以这个时期的C运行时库都是单线程的。<br /> 随着操作系统多线程技术的发展,最初的C运行时库无法满足程序的需求,出现了严重的问题。C运行时库使用了多个全局变量(例如errno)和静态变量,这可能在多线程程序中引起冲突。假设两个线程都同时设置errno,其结果是后设置的errno会将先前的覆盖,
2010-12-27 16:06:00 729
转载 vi/vim中的查找替换
<br />VIM中常用的替换模式总结。<br />vi/vim 中可以使用 :s 命令来替换字符串.<br />0,:g/null/d<br />找到null的行并且删掉<br />1,简单替换表达式<br />替换命令可以在全文中用一个单词替换另一个单词:<br />:%s/four/4/g<br />“%” 范围前缀表示在所有行中执行替换。最后的 “g” 标记表示替换行中的所有匹配点。如果仅仅对当前行进行操作,那么只要去掉%即可<br /> 如果你有一个象 “thirtyfour” 这样的单词,
2010-12-27 14:26:00 946
原创 C语言声明的理解
<br />优先级规则分析<br />A.声明从他的第一个标识符(名字)开始读取,然后按照优先级顺序依次读取:<br />B 优先级从高到低依次是:<br /> B.1声明中被括号括起来的那部分<br /> B.2后缀操作符:<br /> 括号()表示这是一个函数,而方括号[]表示这是一个数组。<br /> B.3前缀操作符:星号*表示“指向...的指针”<br />C 如果const和(或)volatile关键字的后面紧跟类型说明符(如i
2010-12-27 12:16:00 951
原创 返回局部变量指针
<br />一般我们都知道不能返回局部变量的指针,但很多人知道其然,不知道所以然,那么接下来我们分析一下,先看两段代码<br />/*test1.c*/<br />#include <stdio.h><br /><br />char* get_str()<br />{<br /> char str[] = {"hello"};<br /> return str;<br />}<br /><br /><br />int main()<br />{<br />
2010-12-24 17:52:00 7327
原创 /proc/maps
文件 ---- /proc//maps查看进程的虚拟地址空间是如何使用的。该文件有6列,分别为:地址:库在进程里地址范围权限:虚拟内存的权限,r=读,w=写,x=执行,s=共享,p=私有;偏移量:库在进程里地址偏移量设备:映像文件的主设备号和次设备号,可以通过通过 cat /proc/devices查看设备号对应的设备名节点:映像文件的节点号;路径: 映像文件的路径,经常同一个地址有两个地址范围,那是因为一段是r-xp为只读的代码段,一段是rwxp为可读写的数据段。每
2010-12-24 10:31:00 15626
原创 c语言标准
K&R C1978年,丹尼斯·里奇(Dennis Ritchie)和Brian Kernighan合作出版了《C程序设计语言》的第一版。书中介绍的C语言标准也被C语言程序设计师称作“K&R C”,第二版的书中也包含了一些ANSI C的标准。K&R C主要介绍了以下特色:结构(struct)类型长整数(long int)类型无符号整数(unsigned int)类型把运算符=+和=-改为+=和-=。因为=+和=-会使得编译器不知道用户要处理i = +10还是i =- 10,使得处理
2010-12-23 17:03:00 3008
原创 c/c++ 书籍
http://topic.csdn.net/u/20101204/01/231e7724-5217-431c-ad44-c3adfa36add8.html?34275 收藏了很多c/c++经典书籍 http://www.taisha.org/bbs/thread-709707-1-1.html C++经典书籍介绍,很好很详细http://www.15500.net/c-000
2010-12-23 15:46:00 1017
原创 glibc, eglibc和 glib的区别
很多人会混淆glibc和glib,简单说一下他们的区别其实严格得说它们几乎没有任何关系glibc是linux下面c标准库的实现,当然linux下面的标准c库不仅有这一个,如uclibc 和 klibc,但是glibc无疑是用得最多的。而glib是GTK+的基础库,它由基础类型、对核心应用的支持、实用功能、数据类型和对象系统五个部分组成,可以在www.gtk.org网站下载其源代码。是一
2010-12-17 18:13:00 6119
转载 #pragma pack 与#pragma pack(push,1)
#pragma pack是指定数据在内存中的对齐方式,在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然对界(alignment)条件分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同(1) #pragma pack(1) 作用:调整结构体的边界对齐,让其以一个字节对齐;#pragma p
2010-12-16 19:26:00 944
转载 windows下快速创建大文件
F:/>fsutil file createnew wu 20480000000已创建文件 F:/wu也可以使用API SetEndOfFile
2010-12-16 17:22:00 6533
原创 inotify的应用
<br />http://www.ibm.com/developerworks/cn/linux/l-inotify.html<br /> <br />http://www.infoq.com/cn/articles/inotify-linux-file-system-event-monitoring<br /> <br />http://www.docin.com/p-94246785.html#<br /> <br />
2010-12-08 11:44:00 1144
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人