DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

随笔分类 -  Linux

上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 31 下一页

摘要:http://blog.csdn.net/guowake/article/details/6615728 1、修改用户进程可打开文件数限制 1、修改用户进程可打开文件数限制 在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同 阅读全文
posted @ 2016-11-08 10:39 DoubleLi 阅读(6918) 评论(0) 推荐(0)

摘要:修改文件句柄数在Linux下,我们使用ulimit -n 命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024。 对于一般的应用来说(象Apache、系统进程)1024完全足够使用。但是如何象squid、mysql、java等单进程处理大量请求的应用来说就 阅读全文
posted @ 2016-11-08 10:32 DoubleLi 阅读(8426) 评论(1) 推荐(0)

摘要:64G-128G的tf卡文件系统格式为exfat,而hi3518e默认只支持fat32格式的tf卡。为了挂载64G以上的tf卡,只能将sd卡先格式化成FAT32。鉴于exfat性能比FAT32强,因此考虑移植exfat驱动到海思3518e平台,这样就不用强制格式化tf卡。 拷贝驱动源码到内核 # c 阅读全文
posted @ 2016-09-21 16:11 DoubleLi 阅读(1294) 评论(0) 推荐(0)

摘要:在GNU Linux C编程中,要想进行系统命令的执行的话,只提供了system接口,但是此接口并不能得到命令执行后所输出的值,而只能够得到命令是否执行成功的结果。仅仅这样的功能还是不够的,有的时候是要必须通过命令的输出来判断下一步的结果或步骤的,那么怎么样能够得到system命令执行的结果呢?那就 阅读全文
posted @ 2016-09-21 10:16 DoubleLi 阅读(1594) 评论(0) 推荐(0)

摘要:最近项目需求,需要在Linux下开发C++相关项目,经过一番摸索,简单总结了一下如何通过VS Code进行编译调试的一些注意事项。 关于VS Code在Linux下的安装这里就不提了,不管是CentOS还是Ubuntu,如果不懂且搜Q足够的情况下,你会解决的。 一. 前置知识——gcc/g++的编译 阅读全文
posted @ 2016-09-20 15:24 DoubleLi 阅读(81315) 评论(6) 推荐(6)

摘要:Linux 中的设备有2种类型:字符设备(无缓冲且只能顺序存取)、块设备(有缓冲且可以随机存取)。这些设备中,有些设备是对实际存在的物理硬件的抽象,而有些设备则是内核自身提供的功能(不依赖于特定的物理硬件,又称为"虚拟设备")。每个设备在 /dev 目录下都有一个对应的文件(节点)。 常见设备及相应 阅读全文
posted @ 2016-09-20 15:03 DoubleLi 阅读(3275) 评论(0) 推荐(0)

摘要:根据strip的功能表示,strip经常用来去除目标文件中的一些符号表、调试符号表信息,减少包的大小.我自己做了一函数库,同样的代码生成了一个mylib.so和一个mylib.a文件,之后使用了 strip mylib.so 和strip mylib.a 这两条命令去除一些符号表和调试符号表信息,  阅读全文
posted @ 2016-09-08 16:57 DoubleLi 阅读(6179) 评论(0) 推荐(0)

摘要:最近有位 VPS 客户抱怨 MySQL 无缘无故挂掉,还有位客户抱怨 VPS 经常死机,登陆到终端看了一下,都是常见的 Out of memory 问题。这通常是因为某时刻应用程序大量请求内存导致系统内存不足造成的,这通常会触发 Linux 内核里的 Out of Memory (OOM) kill 阅读全文
posted @ 2016-09-06 17:00 DoubleLi 阅读(589) 评论(0) 推荐(0)

摘要:1 库的分类 根据链接时期的不同,库又有静态库和动态库之分。 静态库是在链接阶段被链接的(好像是废话,但事实就是这样),所以生成的可执行文件就不受库的影响了,即使库被删除了,程序依然可以成功运行。 有别于静态库,动态库的链接是在程序执行的时候被链接的。所以,即使程序编译完,库仍须保留在系统上,以供程 阅读全文
posted @ 2016-08-24 11:48 DoubleLi 阅读(4318) 评论(0) 推荐(0)

摘要:freefree 命令相对于top 提供了更简洁的查看系统内存使用情况: # free total used free shared buffers cached Mem: 255988 231704 24284 0 6432 139292 -/+ buffers/cache: 85980 1700 阅读全文
posted @ 2016-08-01 17:07 DoubleLi 阅读(4523) 评论(0) 推荐(0)

摘要:Linux动态链接库的创建与使用1. 介绍 使用GNU的工具我们如何在Linux下创建自己的程序函数库?一个“程序函数库”简单的说就是一个文件包含了一些编译好的代码和数据,这些编译好的代码和数据可以在事后供其他的程序使用。程序函数库可以使整个程序更加模块化,更容易重新编译,而且更方便升级。 程序函数 阅读全文
posted @ 2016-07-25 20:15 DoubleLi 阅读(846) 评论(0) 推荐(0)

摘要:程序往往会因为收到一些信号导致退出,但很多时候并不是我们想要的,比如往一个已经关闭的socket连接发送数据就会受到SIGPIPE,此信号默认会退出程序,但其实大部分时候我们并不想这么做,所以需要忽略一些信号。常见的有 SIGPIPE SIGTTOU SIGTTIN SIGTSTP 阅读全文
posted @ 2016-07-25 20:13 DoubleLi 阅读(456) 评论(0) 推荐(0)

摘要:继续上一篇《 linux下so动态库一些不为人知的秘密(中) 》介绍so搜索路径,还有一个类似于-path,叫LD_RUN_PATH环境变量, 它也是把路径编译进可执行文件内,不同的是它只设置RPATH。 [stevenrao] $ g++ -o demo -L /tmp/ -ltmp main.c 阅读全文
posted @ 2016-07-25 20:07 DoubleLi 阅读(1362) 评论(0) 推荐(0)

摘要:上一篇(linux下so动态库一些不为人知的秘密(上))介绍了linux下so一些依赖问题,本篇将介绍linux的so路径搜索问题。 我们知道linux链接so有两种途径:显示和隐式。所谓显示就是程序主动调用dlopen打开相关so;这里需要补充的是,如果使用显示链接,上篇文章讨论的那些问题都不存在 阅读全文
posted @ 2016-07-25 20:03 DoubleLi 阅读(2033) 评论(0) 推荐(0)

摘要:linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名。二者都使用广泛。本文主要讲动态库方面知识。 基本上每一个linux 程序都至少会有一个动态库,查看某个程序使用了那些动态库,使用ldd命令查看 # ldd /bin/ls linux-vdso.so.1 => (0x000 阅读全文
posted @ 2016-07-25 19:55 DoubleLi 阅读(9381) 评论(0) 推荐(0)

摘要:根据说明文档“How To Write Shared Libraries"介绍, 有四种方法: 1. 在方法声明定义时,加修饰:__attribute__((visibility("hidden"))) 就是说将不公开的函数都加上这个属性,没加的就是可见的 2. gcc 在链接时设置 -fvisib 阅读全文
posted @ 2016-07-25 16:05 DoubleLi 阅读(7493) 评论(0) 推荐(1)

摘要:说道“动态库版本兼容”,很多人头脑中首先蹦出的就是“Dll Hell”。啊,这曾经让人头疼的难题。时至今日,这个难题已经很好地解决了。 在进一步讨论之前来思考一个问题:Linux下为什么没有让人头痛的“DllHell”?回答这个问题,非常easy,因为——Linux下根本没有dll! 哈哈,当然这只 阅读全文
posted @ 2016-07-25 16:04 DoubleLi 阅读(2564) 评论(0) 推荐(0)

摘要:我们很多c程序在windows下是以dll形式展现的,在linux则是以so 形式展现的。 windows一般不会因为编译dll文件的编译器版本不同而出先dll文件不能执行。 但是linux下,不同版本内核的linux下编译的c程序,在其他版本的linux下就容易出现无法执行的问题。主要可能是支持程 阅读全文
posted @ 2016-07-25 11:12 DoubleLi 阅读(12071) 评论(0) 推荐(0)

摘要:objdump -tT libName.so | grep symbel symbolName nm -D libName.so | grep symbel symbolName 很多非常熟悉windows 进程依赖那个dll,使用depends,linux使用ldd命令。查看函数windows使用 阅读全文
posted @ 2016-07-25 11:10 DoubleLi 阅读(7403) 评论(0) 推荐(0)

摘要:linux下查看动态链接库依赖关系的命令 x86:ldd *.so arm:arm-linux-readelf -d *.so 实际例子:以项目中用到的库librtsp.so分析:lijun@ubuntu:~/workspace$ arm-hisiv100nptl-linux-ld -d librt 阅读全文
posted @ 2016-07-25 10:49 DoubleLi 阅读(1808) 评论(0) 推荐(0)

上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 31 下一页