Linux
npu_wy
这个作者很懒,什么都没留下…
展开
-
fedora17 安装配置
[email protected]自由、共享、奉献 QQ:353061239fedora17 安装配置-终极版2012-6-14本文分五部分:第一部分:基本配置(即安装基本的软件及多媒体等)第二部分:GRUB2 的配置修改第三部分:软件安装卸载知识第四部分:fedora 下共享无线上网(这部分讲解了 rc.local 的东西,具体看下面的)第五部分:fedora 的转载 2012-11-28 18:46:05 · 2373 阅读 · 1 评论 -
Message Queue 简介
原文地址: blog.csdn.net/braveii/article/details/5222479Queue(队列),这个词在《数据结构》的课程中出现过,即先进先出的一中数据结构,形象例子就是简单的铁路隧道和排队机;和Queue对应的就是stack(栈),Stack是一种先进后出的数据结构;如果看中文书,还有一个名词用于混,就是heap(堆),这个也很形象,进出转载 2014-08-22 17:38:28 · 527 阅读 · 0 评论 -
NAT
NAT(Network Address Translation,网络地址转换)是将IP 数据包头中的IP 地址转换为另一个IP 地址的过程NAT实现方式:静态转换Static Nat、动态转换Dynamic Nat和端口多路复用OverLoad目前常用的针对UDP的NAT 穿透(NAT Traversal)方法主要有:STUN、TURN、ICE、uPnP等原创 2014-08-22 16:55:23 · 641 阅读 · 0 评论 -
最常见的电话号码
原文:点击打开链接作者: 阮一峰网上有许多电话号码,你知道最常见的是哪个?有个老外找到了答案,这个号码就是2147483647。事情是这样的,我们知道,在计算机中,整数往往用4个字节保存。4个字节就是32位,由于最高位是符号位,那么只剩下31位,也就是说,这种方式所能保存的最大整数是2的31次方-1(因为要去掉零),即2147483647。这转载 2014-08-13 08:56:14 · 994 阅读 · 0 评论 -
Ubuntu14.04下wine国际版QQ
多余的话不说,先给下载链接:下载wine国际版QQ1.下载解压到目录,比如qq/2.双击wine-qqintl_0.1.3-2_i386.deb,打开软件中心,安装3.OK了如果发现QQ图标不在右上通知区出现,不要惊慌,重启下你的Ubuntu,亲测可以原创 2014-08-13 08:40:34 · 1390 阅读 · 0 评论 -
Makefile选项CFLAGS,LDFLAGS,LIBS
原文:点击打开链接CFLAGS 表示用于 C 编译器的选项,CXXFLAGS 表示用于 C++ 编译器的选项。这两个变量实际上涵盖了编译和汇编两个步骤。CFLAGS: 指定头文件(.h文件)的路径,如:CFLAGS=-I/usr/include -I/path/include。同样地,安装一个包时会在安装路径下建立一个include目录,当安装过程中出现问题时,试着把以转载 2014-08-13 14:38:08 · 564 阅读 · 0 评论 -
linux如何配置自己的*.h和*.so
我说的不全,不过以下方式亲测可过:把你所用的*.h 防到 /usr/include原创 2014-08-14 10:10:13 · 750 阅读 · 0 评论 -
Linux下Gcc生成和使用静态库和动态库详解(转)
一、基本概念1.1什么是库在windows平台和linux平台下都大量存在着库。本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。由于windows和linux的平台不同(主要是编译器、汇编器和连接器的不同),因此二者库的二进制是不兼容的。本文仅限于介绍linux下的库。 1.2库的种类linux下的库有转载 2014-08-14 08:45:30 · 595 阅读 · 0 评论 -
inux程序分析工具介绍(二)—-ldd,nm
本文要介绍的ldd和nm是linux下,两个用来分析程序很实用的工具。ldd是用来分析程序运行时需要依赖的动态库的工具;nm是用来查看指定程序中的符号表相关内容的工具。下面通过例子,分别来介绍一下这两个工具:1. ldd, 先看下面的例子, 用ldd查看cs程序所依赖的动态库:wuzesheng@wuzesheng-ubuntu:~/Public$ ldd cs li转载 2014-08-14 09:52:48 · 660 阅读 · 0 评论 -
动态库的链接和链接选项-L,-rpath-link,-rpath
链接动态库如何程序在连接时使用了共享库,就必须在运行的时候能够找到共享库的位置。linux的可执行程序在执行的时候默认是先搜索/lib和/usr/lib这两个目录,然后按照/etc/ld.so.conf里面的配置搜索绝对路径。同时,Linux也提供了环境变量LD_LIBRARY_PATH供用户选择使用,用户可以通过设定它来查找除默认路径之外的其他路径,如查找/work/lib路径,你可以在/e转载 2014-08-16 18:43:31 · 2807 阅读 · 0 评论 -
can not be used when making a shared object; recompile with -fPIC
先是搜到这样的说法:1、编译.o文件的时候,没有加参数-fPIC,这问题个在gcc version 3.4.6版本没有发生,可能那个编译器默认都给加上吧。2、当前程序中有用到某个静态库,那个静态库编译.o文件的时候没有加上-fPIC(静态库其实就是.o文件打包)。补充一点:我发现手写Makefile时即使不加-fPIC也没有这个问题,这一点很郁闷,这个只在用automake工具编译出.a文原创 2014-08-15 19:55:27 · 7279 阅读 · 0 评论 -
linux下运行时链接库的路径顺序
链接时路径(Link-time path)和运行时路径(Run-time path)不是一回事,当然,当你知道这个概念的时候,你原创 2014-08-17 21:02:00 · 4326 阅读 · 0 评论 -
configure 时的host build target问题
原文:今天在移植samba,在用configure 配置时,遇到了host build target等选项,这个问题在linux下编译project时会经常用到。下面总结一下: 在交叉编译中比较常见的一些参数就是build、host和target了,正确的理解这三者的含义对于交叉编译是非常重要的,下面就此进行解释 --build=编译该软件所使用的平台 --host转载 2014-08-10 19:38:35 · 548 阅读 · 0 评论 -
Protocol Buffers介绍
原文地址:转载 2014-08-22 16:51:31 · 487 阅读 · 0 评论 -
内存池的内存地址对齐和长度按照2的幂取整
#define ngx_align_ptr(p, a) \ (u_char *) (((uintptr_t) (p) + ((uintptr_t) a - 1)) & ~((uintptr_t) a - 1))原创 2014-08-06 22:35:10 · 1600 阅读 · 0 评论 -
获取本地IP
bool getlocaladdr(uint32_t *local_ip, uint16_t *local_port, const uint32_t test_ip, const uint16_t test_port){ //assert (0 != test_ip); //assert (0 != test_port); if ((0 == test_ip) || (0原创 2014-07-17 10:18:49 · 602 阅读 · 0 评论 -
全零网络IP地址0.0.0.0表示意义详谈
RFC:0.0.0.0/8 - Addresses in this block refer to source hosts on "this"network. Address 0.0.0.0/32 may be used as a source address for thishost on this network; other addresses within 0.0.0.0/8转载 2014-07-17 09:10:08 · 704 阅读 · 0 评论 -
Git分支管理策略
原文: 如果你严肃对待编程,就必定会使用"版本管理系统"(Version Control System)。眼下最流行的"版本管理系统",非Git莫属。相比同类软件,Git有很多优点。其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便。有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"快转载 2014-07-25 10:59:10 · 457 阅读 · 0 评论 -
Git远程操作详解
原文:Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能。Git有很多优势,其中之一就是远程操作非常简便。本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Git远程操作。git clonegit remotegit fetchgit pullgit push本文针对初级用户,从最简单的讲起,但是需要读者对Git的基本用法有所转载 2014-07-25 09:33:55 · 501 阅读 · 0 评论 -
读懂diff
作者: 阮一峰diff是Unix系统的一个很重要的工具程序。它用来比较两个文本文件的差异,是代码版本管理的基石之一。你在命令行下,输入: $ diff diff就会告诉你,这两个文件有何差异。它的显示结果不太好懂,下面我就来说明,如何读懂diff。一、diff的三种格式由于历史原因,diff有三种格式: * 正常格式(normal diff转载 2014-07-25 11:00:21 · 442 阅读 · 0 评论 -
VIM简单使用
= + a + { 格式化一个函数{ + { 向上跳转一个函数} + } 向下跳转一个函数为 vim 增加函数高亮功能修改 /usr/share/vim/vim72/syntax/c.vim,在最后添加syn match cFuntions display "[a-zA-Z_][a-zA-Z_0-9]\{-1,}\s\{-0,}(\{1}"ms=s,me=e-1原创 2014-07-25 11:03:17 · 661 阅读 · 0 评论 -
P2P原理及UDP穿透简单说明
本文章出自cnntec.com的AZ猫著,如需要转发,请注明来自cnntec.comPeer-To-Peer缩写P2P中文称之为对等联网。用途于交流,比如QQ,MSN等等。文件传输、分布式数据计算等等。这里我们主要是是简单讲解一下UDP实现NAT的穿透(俗称打洞)当然TCP与之相似,可以以此类推。NAT最开始出现在路由器上。详细的大家可以在网上查下资料N转载 2014-07-28 20:22:40 · 561 阅读 · 0 评论 -
Ubuntu下U盘文件只读的解决办法
1. 在Ubuntu终端运行如下命令tail -f /var/log/syslog 2. 插入有只读文件系统故障的U盘3. 观察命令行输出输出局部如下:Jul 8 16:44:50 cslouis-pc kernel: [15595.155904] FAT: Filesystem error (dev sdb4)Jul 8 16:44:50 cslouis-pc转载 2014-08-04 19:04:03 · 520 阅读 · 0 评论 -
文件空洞和ls,du命令
du == disk usage (磁盘使用量,占用的磁盘空间)du 的基本使用du -s #s参数是可以统计占硬盘空间大小的如 du -skh web-k或--kilobytes 以1024 bytes为单位。-h或--human-readable 以K,M,G为单位,提高信息的可读性-s或--summarize 统计目录或文件一个文件占用的磁盘空间和一转载 2014-08-07 15:56:26 · 1389 阅读 · 0 评论 -
VmRSS: 33604 kB
如果想在脚本里只获取PID,那么可以用如下脚本。目前收集两种方法: 方法一$ps x|grep xxx |awk '{print $1}' e.g. ps x|grep java |awk '{print $1}'注释: 1、xxx为执行的命令名称 2、举个例子,获取当前用户下的java进程 【pid】 [转载 2014-08-06 15:53:41 · 901 阅读 · 0 评论 -
mmap共享内存
Linux下多任务间通信和同步-mmap共享内存嵌入式开发交流群280352802,欢迎加入!1.简介共享内存可以说是最有用的进程间通信方式.两个不用的进程共享内存的意思是:同一块物理内存被映射到两个进程的各自的进程地址空间.一个进程可以及时看到另一个进程对共享内存的更新,反之亦然.采用共享内存通信的一个显而易见的好处效率高,因为进程可以直接读写内存,而不需要任何数据的复制.对于向转载 2014-08-07 09:18:05 · 498 阅读 · 0 评论 -
Ubuntu 14.04 LTS 洗NTFS分区无法访问解决
解决的方法也不难 原理就是在Ubuntu下运行ntfs fix 工具 把误报错误销掉,以下均在Terminal下完成:1.sudo apt-get install ntfsprogs2.sudo ntfsfix /dev/sdb2解释下,第一条命令安装ntfs命令包(要求联网状态);第二条调用ntfsfix命令对指定硬盘(示例当中UUID"/dev/sdb2"显示的是设备管理器下硬盘b转载 2015-04-04 18:24:25 · 754 阅读 · 0 评论