linux
文章平均质量分 53
nuoshueihe
这个作者很懒,什么都没留下…
展开
-
互斥锁
互斥锁求助编辑百科名片在编程中,引入了对象互斥锁的概念,来保证共享数据操作的完整性。每个对象都对应于一个可称为" 互斥锁" 的标记,这个标记用来保证在任一时刻,只能有一个线程访问该对象。目录互斥锁举例:初始化互斥锁属性对象pthread_mutexattr_init 语法pthread_mutexattr_init 返回值销毁互斥原创 2012-06-05 18:01:45 · 738 阅读 · 0 评论 -
gethostbyname
/* lookup.c: * Example of gethostbyname(3): * gethostbyname example * gethostbyname example code * supply the hostname as argument you want to lookup * see the sample output below the c原创 2013-01-15 18:08:30 · 619 阅读 · 0 评论 -
little endian和big endian的概念解释,判定与用途
little endian和big endian是表示计算机字节顺序的两种格式,所谓的字节顺序指的是长度跨越多个字节的数据的存放形式. 假设从地址0x00000000开始的一个字中保存有数据0x1234abcd,那么在两种不同的内存顺序的机器上从字节的角度去看的话分别表示为: 1)little endian:在内存中的顺序是0x00000000-0xcd,0x0000转载 2013-01-31 16:45:57 · 529 阅读 · 0 评论 -
Linux下面的线程锁,条件变量以及信号量的使用
一) 线程锁1) 只能用于"锁"住临界代码区域2) 一个线程加的锁必须由该线程解锁.锁几乎是我们学习同步时最开始接触到的一个策略,也是最简单, 最直白的策略.二) 条件变量,与锁不同, 条件变量用于等待某个条件被触发1) 大体使用的伪码:// 线程一代码pthread_mutex_lock(&mutex);// 设置条件为truepthread_cond_signal(&c转载 2013-01-31 16:24:54 · 750 阅读 · 0 评论 -
socket阻塞详解
#include #include #include #include #include #include #include #include #include #include #include //设置socketint AllocSocket(){ int fd = socket(AF_INET, SOCK_STREAM, 0原创 2013-01-21 16:29:26 · 651 阅读 · 0 评论 -
Linux下编译Google Test(gtest)附带的五个例子
2008-07-29 02:54:56| 分类: 默认分类|字号 订阅在http://code.google.com/p/googletest下载到gtest-1.0.1,解压缩。进入所在目录,如“~/gtest/”,进行编译:$ ./configure$ make编译完成,进入例子所在目录“~/gtest/samples/”,分别编译例子转载 2013-03-05 17:55:35 · 1345 阅读 · 0 评论 -
Linux环境下网络编程杂谈
今天我们说说“Pre-网络编程”。内容比较杂,但都是在做网络应用程序开发过程中经常要遇到的问题。一、大端、小端和网络字节序小端字节序:little-endian,将低字节存放在内存的起始地址;大端字节序:big-endian,将高字节存放在内存的其实地址。 例如,数字index=0x11223344,在大小端字节序方式下其存储形式为:上图一目了然的转载 2013-03-08 15:32:07 · 684 阅读 · 0 评论 -
Linux系统调用--fcntl函数详解
今天在看《Linux设备驱动程序(第3版)》碰到了fcntl系统调用,以前没接触过。在网上查到了这份资料,转载自 企鹅乐园_雅虎群组。【fcntl系统调用】 功能描述:根据文件描述词来操作文件的特性。 用法: int fcntl(int fd, int cmd); int fcntl(int fd, int cmd, long arg); int fcntl(i转载 2013-03-08 13:59:51 · 2738 阅读 · 0 评论 -
linux解压 tar命令
tar [-cxtzjvfpPN] 文件与目录 ....参数:-c :建立一个压缩文件的参数指令(create 的意思);-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的文件!特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?原创 2013-02-26 11:03:16 · 352 阅读 · 0 评论 -
linux C高级程序员指南
du 命令显示所占的块数eg: -s 不显示子目录的文件块数,只是显示总数。 不加-s 会显示子目录的块数[nlstest@NLS209 ~]$ du -s .7737468 .file 命令判断文件类型原创 2013-02-26 13:33:54 · 730 阅读 · 0 评论 -
Linux信号详解
一 信号的种类可靠信号与不可靠信号, 实时信号与非实时信号可靠信号就是实时信号, 那些从UNIX系统继承过来的信号都是非可靠信号, 表现在信号不支持排队,信号可能会丢失, 比如发送多次相同的信号, 进程只能收到一次. 信号值小于SIGRTMIN的都是非可靠信号.非可靠信号就是非实时信号, 后来, Linux改进了信号机制, 增加了32种新的信号, 这些信号都是可靠信号, 表现在信号支持转载 2013-02-27 13:32:51 · 419 阅读 · 0 评论 -
linux下查看进程内存使用情况
动态查看一个进程的内存使用[c-sharp] view plaincopyprint?1、top命令 top -d 1 -p pid [,pid ...] //设置为delay 1s,默认是delay 3s 如果想根据内存使用量进行排序,可以shift + m(Sort by memory usage)转载 2013-04-02 14:54:36 · 493 阅读 · 0 评论 -
fcntl系统调用
功能描述:根据文件描述词来操作文件的特性。 用法: int fcntl(int fd, int cmd); int fcntl(int fd, int cmd, long arg); int fcntl(int fd, int cmd, struct flock *lock); 参数: fd:文件描述词。 cmd:操作命令。 arg:转载 2013-04-07 10:07:24 · 623 阅读 · 0 评论 -
tcpdump详解
用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。 实用命令实例默认启动tcpdump转载 2013-04-09 14:19:14 · 1652 阅读 · 0 评论 -
记录的网站
http://www.cnblogs.com/ggjucheng/http://www.boost.org/doc/libs/1_53_0/doc/html/thread.html //bost线程库http://software.intel.com/zh-cn/blogs/2011/09/15/boost1 #inter boost 库整理原创 2013-04-09 14:21:34 · 647 阅读 · 0 评论 -
linux下strace讲解
1、说明strace - trace system calls and signals2、option1)strace -p pid 跟踪某个后台进程2)strace -o filename 把跟踪结果输出到文件3)strace -T 记录每个系统调用花费的时间,可以看看哪个系统调用时间长参考4)strace -t(或者 -tt)记录每个系统调用发生是的时间(时分秒的格式)5)s转载 2013-05-16 15:26:00 · 1120 阅读 · 0 评论 -
rpm安装
通常情况下 使用rpm -ivh *.rpm就行了但是有的时候,有包的依赖关系。比如A依赖B ,B依赖A,如何解决呢?使用rpm -Fvh a.rpm b.rpm 可以自动推导包的关系查询包的所依赖的包rpm --qpR a.rpm 会查询所依赖的包rpm -ivh --test a.rpm原创 2013-05-22 11:15:17 · 582 阅读 · 0 评论 -
页精灵编程实例
原创 2012-12-25 15:36:51 · 350 阅读 · 0 评论 -
Handle multiple socket connections with fd_set and select on Linux
When writing server programs using sockets , it becomes necessary to handle multiple connections at a time , since a server needs to serve multiple clients.There are many ways to do so. On linux t转载 2012-12-07 15:23:49 · 1068 阅读 · 0 评论 -
linux下java环境变量的配置
找到 安装好的路径/usr/java/jdk1.6.0_21/binexport导出PATHvi ~/.bashrc 1 # .bashrc 2 3 # User specific aliases and functions 4 5 alias rm='rm -i' 6 alias cp='cp -i' 7 alias mv='mv -i'原创 2012-06-12 17:18:34 · 416 阅读 · 0 评论 -
linux中的列编辑
最近在看《高级Bash脚本编程指南》,里面有好多脚本的例子,但是都是这个样子的:每次复制到机器里面的时候前面都有行号,一行一行的删很是麻烦。突然想到vim好像有个列编辑的模式,就google了一下。sed awk 正则也能做但是估计更复杂,就没研究。这里分享一下具体方法。删除列1.光标定位到要操作的地方。2.CTRL+v 进入“可视 块”模式,选取这一列原创 2012-06-13 17:20:47 · 2719 阅读 · 0 评论 -
linux 下命令监控 watch "./test.sh"
test.sh 为shell原创 2012-06-14 11:15:45 · 496 阅读 · 0 评论 -
H264
http://apps.hi.baidu.com/share/detail/15069147原创 2012-06-18 23:08:01 · 355 阅读 · 0 评论 -
动态链接库的制作与调用
[root@localhost so_file]# ls so_test.h test_a.c test_b.c test.c test_c.c [root@localhost so_file]# [root@localhost so_file]# cat so_test.h #include void test_a(); void test_b(); v原创 2012-06-29 10:47:00 · 842 阅读 · 3 评论 -
Linux动态链接库.so文件的创建与使用
Linux动态链接库.so文件的创建与使用本文以一个简单的例子,介绍linux下动态库的创建和使用操作。其中就无法找到动态库文件的问题简单介绍处理办法。动态链接库文件在windows平台下往往以.dll为后缀,而在linux平台则一般以.so为后缀,so是shared object的缩写。感觉在linux下构建动态链接库文件比在windows下省点功夫,使用gcc编译器的话,只原创 2012-06-29 11:19:35 · 1551 阅读 · 1 评论 -
怎样编译gcc源码
2004年4月20日最新版本的GCC编译器3.4.0发布了。目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语言。GCC 3.4.0比以前版本更好地支持了C++标准。本文以在Redhat Linux上安装GCC3.4.0为例,介绍了GCC的安装过程。 安装之前,系统中必须要有cc或者gcc等编译器,并且是可用的,或者用环境变量转载 2012-09-10 16:10:12 · 759 阅读 · 0 评论 -
每个程序员都应该知道的8个Linux命令
摘要:Linux里有很丰富的各种命令,有些是很难用的。然而,学会了前面说的这8个命令,你已经能处理大量的log分析任务了,完全不需要用脚本语言写程序来处理它们。每个程序员,在职业生涯的某个时刻,总会发现自己需要知道一些Linux方面的知识。我并不是说你应该成为一个Linux专家,我的意思是,当面对Linux命令行任务时,你应该能很熟练的完成。事实上,学会了下面8个命令,我基本上能完成任转载 2012-09-19 17:14:31 · 447 阅读 · 0 评论 -
超实用的8个Linux命令行性能监测工具
摘要:本文总结了8个非常实用的Linux命令行性能监测工具,这些命令支持所有的Linux系统,不仅可以用于监控系统,还可以发现导致性能问题的原因所在。对每个系统/网络管理员来说,每天监测Linux系统性能是一项非常艰巨的任务。在IT业从事5年的Linux系统管理员后,我发现监控和保持系统正常运行真不是件容易的事,为此,我总结了8个非常实用的命令行工具给Linux/Unix系统管理员。这转载 2012-09-19 17:13:23 · 583 阅读 · 0 评论 -
Ubuntu apt 系列命令
Ubuntu apt-cache命令查找可用软件包、apt-cache 使用 apt-cache search ***(SSH)sudo apt-get install ***apt-get upgradeapt-get update原创 2012-10-12 16:58:18 · 694 阅读 · 0 评论 -
lunux下多线程总结
http://www.ibm.com/developerworks/cn/linux/l-cn-mthreadps/index.html原创 2012-11-13 17:49:53 · 532 阅读 · 0 评论 -
linux内核之旅网址
http://www.kerneltravel.net/?page_id=8原创 2012-11-14 11:07:45 · 433 阅读 · 0 评论 -
linux内核博客
http://blog.csdn.net/mcgrady_tracy/article/details/7072259原创 2012-11-13 17:52:49 · 402 阅读 · 0 评论 -
为什么需要htons(), ntohl(), ntohs(),htons() 函数 .模拟htonl、ntohl、htons、ntohs函数实现
在C/C++写网络程序的时候,往往会遇到字节的网络顺序和主机顺序的问题。这是就可能用到htons(), ntohl(), ntohs(),htons()这4个函数。网络字节顺序与本地字节顺序之间的转换函数: htonl()--"Host to Network Long" ntohl()--"Network to Host Long" hto转载 2012-11-30 14:08:32 · 1582 阅读 · 0 评论 -
Linux下timer的使用介绍,例子
1、alarm------------------------------------------- 如果不要求很精确的话,用alarm()和signal()就够了 unsigned int alarm(unsigned int seconds) 函数说明: alarm()用来设置信号SIGALRM在经过参数seconds指定的秒数后传送给目前的进程。如果参数second转载 2012-12-03 14:18:32 · 4163 阅读 · 0 评论 -
select 详解
select系统调用是用来让我们的程序监视多个文件描述符(file descriptor)的状态变化的。程序会停在select这里等待,直到被监视的文件描述符有某一个或多个发生了状态改变。select函数原型如下:int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timev转载 2012-12-07 10:51:07 · 470 阅读 · 0 评论 -
C语言中##的用法以及##在变参的设计
C语言中##称为连接符,其功能是在带参数的宏定义中将两个子串(token)联接起来,从而形成一个新的子串。要注意下面的用法:1、[cpp] #include #define debug(format, args...) fprintf(stderr, format, args) void main(void){ debug("Test \n");原创 2013-04-24 14:13:12 · 910 阅读 · 0 评论