Linux系统编程
FishBear_move_on
github 地址 https://github.com/Jayhello
展开
-
linux中fork()函数详解(原创!!实例讲解)
转载于http://blog.csdn.net/jason314/article/details/5640969 一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用转载 2014-11-26 09:36:18 · 535 阅读 · 0 评论 -
tinyhttpd 剖析
http://blog.csdn.net/jcjc918/article/details/42129311http://techlog.cn/article/list/10182680 (图片来源) 主要函数 这是所有函数的声明:[cpp] view plaincopyvo转载 2015-12-11 22:44:12 · 460 阅读 · 0 评论 -
Makefile 使用总结
http://www.cnblogs.com/wang_yb/p/3990952.html1. Makefile 简介Makefile 是和 make 命令一起配合使用的.很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂.Makefile的组织流程的能力如此之强, 不仅可以用来编译转载 2015-12-27 15:20:08 · 533 阅读 · 0 评论 -
cmake 学习笔记(一)
http://blog.csdn.net/dbzhang800/article/details/6314073最大的Qt4程序群(KDE4)采用cmake作为构建系统Qt4的python绑定(pyside)采用了cmake作为构建系统开源的图像处理库 opencv 采用cmake 作为构建系统...看来不学习一下cmake是不行了,一点一点来吧,找个最简单的C程序,慢慢复杂转载 2015-12-21 15:43:01 · 404 阅读 · 0 评论 -
CentOS安装配置cmake
zhoulf 2013-02-03 原创安装说明安装环境:CentOS-6.3安装方式:源码编译安装 软件:cmake-2.8.10.2.tar.gz下载地址:http://www.cmake.org/cmake/resources/software.html安装前提系统中已经安装了g++和ncurses-devel,如果没有安装使用下面的命令安装:转载 2015-12-22 23:01:09 · 574 阅读 · 0 评论 -
linux动态库和静态库
http://blog.163.com/xychenbaihu@yeah/blog/static/13222965520101023104745738/Linux下静态库_库的基本概念;如何生成静态库动态库;nm查看库中包含那些函数、ar生成静态库,查看库中包含那些.o文件、ldd查看程序依赖的.so文件;gcc/g++与库相关的参数-L,-l,-fPIC,-shared;静态库链接时转载 2015-12-27 20:22:06 · 578 阅读 · 0 评论 -
vi/vim编辑器必知必会
一、我们为什么要学习vim编辑器?Linux的命令行界面下面有非常多的文本编辑器。比如经常听说的就有Emacs、pico、nano、joe与vim等。vim可以看做是vi的高级版。我们为什么一定要学习vim呢?有以下几个原因:(1)所有的Unix like系统都会内置vi文本编辑器,其他的文本编辑器则不一定会存在。(2)很多软件的编辑接口都会主动调用vi。(3)转载 2016-04-27 21:32:50 · 335 阅读 · 0 评论 -
漫画赏析:Linux 内核到底长啥样
今天,我来为大家解读一幅来自 TurnOff.us 的漫画 “InSide The Linux Kernel” 。 TurnOff.us 是一个极客漫画网站,作者Daniel Stori 画了一些非常有趣的关于编程语言、Web、云计算、Linux 相关的漫画。今天解读的便是其中的一篇。在开始,我们先来看看这幅漫画的全貌!这幅漫画是以一个房子的侧方刨面图来绘画的。使用这样转载 2017-03-16 09:46:59 · 1275 阅读 · 1 评论 -
cmake _GLIBCXX_USE_CXX11_ABI undefined reference std::__cxx11::basic_string
undefined reference std::__cxx11::basic_stringcmake cxxflags -D_GLIBCXX_USE_CXX11_ABIin cmake clion add_definitions(-D_GLIBCXX_USE_CXX11_ABI=0)In the case of cmake, it is trans原创 2017-04-28 19:22:15 · 15525 阅读 · 1 评论 -
TCP socket心跳包示例程序
http://blog.csdn.net/lisonglisonglisong/article/details/51327695#comments在做游戏开发时,经常需要在应用层实现自己的心跳机制,即定时发送一个自定义的结构体(心跳包),让对方知道自己还活着,以确保连接的有效性。在TCP socket心跳机制中,心跳包可以由服务器发送给客户端,也可以由客户端发送给服务器,不过比转载 2017-05-03 19:33:57 · 524 阅读 · 0 评论 -
GDB调试Segmentation Fault
http://www.unknownroad.com/rtfm/gdbtut/gdbsegfault.html7.2 Example Debugging Session: Segmentation Fault ExampleWe are going to use gdb to figure out why the following program causes a segme转载 2017-05-07 18:37:15 · 1033 阅读 · 0 评论 -
跟我一起写Makefile:MakeFile介绍
http://wiki.ubuntu.org.cn/%E8%B7%9F%E6%88%91%E4%B8%80%E8%B5%B7%E5%86%99Makefile:MakeFile%E4%BB%8B%E7%BB%8Dmakefile 介绍make命令执行时,需要一个 makefile 文件,以告诉make命令如何去编译和链接程序。首先,我们用一个示例来说明mak转载 2017-05-07 18:44:37 · 263 阅读 · 0 评论 -
linux下jsoncpp的编译和测试使用
http://blog.csdn.net/ljp1919/article/details/483197791、预备条件:JsonCPP类库http://sourceforge.net/projects/jsoncpp/?source=dlpSCONS编译器http://sourceforge.net/projects/scons/?source=dlpPythonhttp://ww转载 2015-12-09 23:05:01 · 553 阅读 · 0 评论 -
Makefile经典教程(掌握这些足够)
http://blog.csdn.net/ruglcc/article/details/7814546拉轰的专栏少壮不努力 老大徒伤悲目录视图摘要视图订阅新版极客头条上转载 2015-07-07 18:41:41 · 2557 阅读 · 0 评论 -
linux系统编程之进程(二):fork函数相关总结
转载于http://blog.csdn.net/jnu_simba/article/details/8928635fork的作用是根据一个现有的进程复制出一个新进程,原来的进程称为父进程(Parent Process),新进程称为子进程(Child Process)。系统中同时运行着很多进程,这些进程都是从最初只有一个进程开始一个一个复制出来的。在Shell下输入命令可以运行一转载 2014-11-26 09:37:18 · 541 阅读 · 0 评论 -
Linux下动态库(.so)和静态库(.a) 的区别
linux下有两种库:动态库和静态库(共享库)二者的不同点在于代码被载入的时刻不同。静态库的代码在编译过程中已经被载入可执行程序,因此体积比较大。动态库(共享库)的代码在可执行程序运行时才载入内存,在编译过程中仅简单的引用,因此代码体积比较小。不同的应用程序如果调用相同的库,那么在内存中只需要有一份该动态库(共享库)的实例。静态库和动态库的最大区别,静态情况转载 2015-01-10 23:01:44 · 837 阅读 · 0 评论 -
linux GDB调试c++程序
GDB 是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长,尺有所短”就是这个道理。 一般来说,GDB主要帮忙你完成下面四个方面的功能:启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。可转载 2015-01-18 20:36:14 · 506 阅读 · 0 评论 -
unix 的 bash shell 脚本
1.test01 test021 200 1 1002 500 2 3003 200 3 504 100 4 150输出200 100 100500 300 200300 50 150100 150 -50awk 减法数组awk ‘ NR == FNR { a[NR]=$2 } NR != FNR { print a[F转载 2015-02-08 15:26:55 · 763 阅读 · 0 评论 -
linux 多进程编程 大致总结
http://blog.csdn.net/zs634134578/article/details/20475741问题聚焦: 进程是Linux操作系统环境的基础。 本篇讨论以下几个内容,同时也是面试经常被问到的一些问题: 1 复制进程映像的fork系统调用和替换进程映像的exec系列系统调用 2 僵尸进程 3转载 2015-01-01 12:10:45 · 913 阅读 · 0 评论 -
僵尸进程与孤儿进程[总结]
http://www.cnblogs.com/Anker/p/3271773.html1、前言 之前在看《unix环境高级编程》第八章进程时候,提到孤儿进程和僵尸进程,一直对这两个概念比较模糊。今天被人问到什么是孤儿进程和僵尸进程,会带来什么问题,怎么解决,我只停留在概念上面,没有深入,倍感惭愧。晚上回来google了一下,再次参考APUE,认真总结一下,加深理解。转载 2015-01-02 14:21:06 · 562 阅读 · 0 评论 -
守护进程与僵尸进程
http://blog.csdn.net/russell_tao/article/details/709003304年时维护的第一个商业服务就用了两次fork产生守护进程的做法,前两天在网上看到许多帖子以及一些unix书籍,认为一次fork后产生守护进程足够了,各有道理吧,不过多了一次fork到底是出于什么目的呢?进程也就是task,看看内核里维护进程的数据转载 2015-01-02 15:03:35 · 483 阅读 · 0 评论 -
线程池模型[初级版]
图1:线程池模型当前线程池中有两个线程正处理任务。图2:线程池运行期间现在用户新增加任务worker3,首先调用pool_add_worker(),把worker3插入等待队列:如图图3:用户新增worker3图4:调用pool_add_worker,把worker3插入thread_worker中转载 2015-01-03 08:54:14 · 456 阅读 · 0 评论 -
用GDB调试程序(一)
http://blog.csdn.net/haoel/article/details/2879用GDB调试程序GDB概述————GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大转载 2015-01-24 10:00:34 · 470 阅读 · 0 评论 -
GDB调试程序(二)
http://blog.csdn.net/haoel/article/details/2880GDB的命令概貌———————启动gdb后,就你被带入gdb的调试环境中,就可以使用gdb的命令开始调试程序了,gdb的命令可以使用help命令来查看,如下所示: /home/hchen> gdb GNU gdb 5.1.1 Copyright 2002 Fr转载 2015-01-24 10:03:58 · 437 阅读 · 0 评论 -
Makefile经典教程(掌握这些足够)
makefile很重要 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写make转载 2015-04-05 21:59:33 · 484 阅读 · 0 评论 -
gdb调试c++常用技巧
http://www.techbeamers.com/how-to-use-gdb-top-debugging-tips/GDB Tutorial: Essential Debugging Tips.Compile a Program with Debugging Symbols.Two Ways to Start a Program with GDB.Ho转载 2017-05-09 18:15:50 · 1084 阅读 · 0 评论