软件包的组成部分:二进制程序、库、配置文件、帮助文件二进制程序:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin应用程序:/usr/local/nginx库:/lib,/usr/lib,/lib64,/usr/lib64,/usr/local/lib,/usr/local/lib64应用程序:/usr/local/nginx定义库文件的位..
分类:
系统相关 时间:
2014-08-26 19:52:17
阅读次数:
347
linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名。二者都使用广泛。本文主要讲动态库方面知识。基本上每一个linux 程序都至少会有一个动态库,查看某个程序使用了那些动态库,使用ldd命令查看#ldd/bin/ls使用 ldd -u /bin/ls 查看不需要链接的so大家...
分类:
系统相关 时间:
2014-08-23 13:51:00
阅读次数:
237
对于设计嵌入式Linux系统的研发人员来说,有一个问题是必须要考虑到的,那就是存储器的空间。我们知道嵌入式Linux系统所用的存储器不是软磁盘、硬盘、ZIP盘、CD-ROM、DVD这些众所周知的大容量常规存储器,它使用的是例如Rom, CompactFlash,M-Systems的DiskOnChi...
分类:
系统相关 时间:
2014-08-21 16:47:04
阅读次数:
436
图为面向连接的Socket通信的双方执行函数流程。使用TCP协议的通信双方实现数据通信的基本流程如下
建立连接的步骤:
1、首先服务器端需要以下工作:
(1)调用socket()函数,建立Socket对象,指定通信协议。
(2)调用bind()函数,将创建的Socket对象与当前主机的某一个IP地址和TCP端口绑定。
(3)调用listen()函数。使...
如果一个程序员从来没有在linux,unix下开发过程序,一直在windows下面开发程序, 同样是工作10年, 大部分情况下与在linux,unix下面开发10年的程序员水平会差别很大。我写这篇文章并不是想贬低windows下面开发的人,做windows开发的人看了可能会感觉不舒服,我并不是这个意...
因为项目需要,同时开发了Linux/Windows版本的程序,后面在实际测试过程中,发现两个版本之间的体现出来的行为有些不一致,大致情况如下:1、Linux下代码能编译通过,Windows下编译通过2、Linux下程序功能正常,Linux程序功能不正确#配置库使用svn,两个系统使用同一份代码后面经...
分类:
其他好文 时间:
2014-08-17 18:22:02
阅读次数:
187
网络数据包的封包与拆包
过程如下:
将数据从一台计算机通过一定的路径发送到另一台计算机。应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation),如下图所示:
不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据包(packet),在链路层叫做帧(frame)。数据封装成帧后发到传输介质...
分类:
系统相关 时间:
2014-08-17 11:47:12
阅读次数:
560
转载请注明出处: ,谢谢!
内容提要
本节主要学习网络通信基础,主要涉及的内容是:
TCP/IP协议簇基础:两个模型
IPv4协议基础:IP地址分类与表示,子网掩码等
IP地址转换:点分十进制\二进制
TCP/IP协议簇基础
OSI模型
我们知道计算机网络之中,有各种各样的设备,那么如何实现这些设备的通信呢?
显然是通过标准的通讯协议,但是,整个网络连接的过程相当复杂,包...
分类:
系统相关 时间:
2014-08-16 18:33:40
阅读次数:
401
互斥锁通信机制
基本原理
互斥锁以排他方式防止共享数据被并发访问,互斥锁是一个二元变量,状态为开(0)和关(1),将某个共享资源与某个互斥锁逻辑上绑定之后,对该资源的访问操作如下:
(1)在访问该资源之前需要首先申请互斥锁,如果锁处于开状态,则申请得到锁并立即上锁(关),防止其他进程访问资源,如果锁处于关,则默认阻塞等待.
(2)只有锁定该互斥锁的进程才能释放该互斥锁.
互斥量类型声...
分类:
编程语言 时间:
2014-08-15 10:47:48
阅读次数:
304