自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (34)
  • 收藏
  • 关注

原创 重装Windows后修复Linux引导

装了双系统(Windows和Linux)的机器重新安装Windows后会导致Linux的引导丢失而无法进入原先的Linux系统[其原因是Windows会覆盖原先MBR中的Linux的BootLoader-GRUB]。这种情况可以通过修复引导而重新找回Linux。   以Ubuntu14.04为例;首先找到一张Linux的安装盘,放入光驱后重启电脑。进入BIOS让电脑从光盘启动,然后进入Live C

2014-10-20 10:23:09 7905

原创 gdb学习(二)[第二版]

查看运行时数据print - 查看变量值 ptype – 查看变量类型 #ptype i #ptype “aaa” 打印字符串”aaa”的类型 #ptype array 打印数组array的类型 #ptype main 打印main函数的类型 print array – 查看数组 #p arr1 #p arr1[2] 查看数组arr2第三个元素值 #p &arr1[2] 打印数组元素的地

2014-10-12 22:19:31 2942 1

原创 gcc学习(二)[第二版]

头文件与库文件1、概要 在使用C语言和其他语言进行程序设计的时候,我们需要头文件来提供对常数的定义和对系统及库函数调用的声明。 库文件是一些预先编译好的函数集合,那些函数都是按照可重用原则编写的。它们通常由一组互相关联的用来完成某项常见工作的函数构成。比如用来处理屏幕显示情况的函数(ncurses库)和数据库访问例程(dbm库)等。 2、使用库的优点: 1)模块化开发 2)可重用性 3)可维护性

2014-10-12 17:14:30 2727

转载 Linux程序分析工具介绍—ldd,nm

原文件链接:http://blog.csdn.net/statdm/article/details/7759100

2014-10-12 16:59:28 3006

原创 gcc学习(一)[第二版]

gcc简介1、 gcc是GNU Compiler Collection的缩写。最初是作为C语言的编译器(GNU C  Compiler),作者为Richard Stallman,是GNU项目的奠基者;现在已经支持多种语言,如C、C++、Java、Pascal、Ada、COBOL语言等 。 2、主要特征: gcc是一个可移植的编译器,支持多种硬件平台,甚至对Don Knuth 设计的 MMIX 这类

2014-10-12 12:56:22 5424 1

原创 gdb学习(一)[第二版]

概述 gdb是GNU debugger的缩写,是编程调试工具。 功能 1、启动程序,可以按照用户自定义的要求随心所欲的运行程序。 2、可让被调试的程序在用户所指定的断点处停住 (断点可以是条件表达式)。 3、当程序停住时,可以检查此时程序中所发生的事。 4、动态改变程序的执行环境。  示例:gcc -Wall -g simple.c -o simple #一定要记得加上-g选项,以便生成调试信息

2014-10-11 21:02:26 4304

原创 Makefile学习(三)[第二版]

make常用内嵌函数1、函数调用   $(function arguments) #$引用的结果就是函数生成的结果 2、Makefile下常用的函数 1)$(wildcard PATTERN) #匹配当前目录下的文件 例如:src=$(wildcard *.c) #匹配当前目录下所有的.c文件  2)$(patsubst PATTERN,REPLACEMENT,TEXT) #模式替换函数 例如:$

2014-10-10 18:09:04 2714

原创 Linux下的tree命令 --Linux下目录树查看

Linux下的tree命令--Linux下目录树查看  有时我们需要生成目录树结构,可以使用的有ls -R,但是实际效果并不好  这时需要用到tree命令,但是大部分Linux系统是默认不安装该命令的,需要自己安装一下;tree的常见用法: tree -a  #显示所有 tree -d  #仅显示目录 tree -L n  #n代表数字..表示要显示几层... tree -f  #显示完整路

2014-10-10 12:09:29 43748

原创 Makefile学习(二)[第二版]

复杂实例#示例1:在上一个示例的基础上再增加一个可执行文件03test[修改之处已标红].PHONY: clean all  CC = gcc CFLAGS = -Wall -gBIN = 01test 02test 03testSOURCES = $(BIN:=.c)OBJECTS = $(BIN:=.o) all: $(BIN) 01test: 01test.o02test: 02test.o

2014-10-10 11:23:05 2572

原创 Makefile学习(一)[第二版]

简介 1)make:利用 make 工具可以自动完成编译工作。这些工作包括:如果仅修改了某几个源文件,则只重新编译这几个源文件[make通过比对相应的.c文件与.o文件的时间];如果某个头文件被修改了,则重新编译所有包含该头文件的源文件。利用这种自动编译可大大简化开发工作,避免不必要的重新编译。 2)Mackfile:make工具通过一个称为 Mackfile 的文件来完成并自动维护编译工作。Ma

2014-10-10 11:13:27 3553

原创 Linux下top命令详解

Linux下top命令详解  top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止. 比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用

2014-10-08 20:40:12 4215 2

TCPIP系列博客

计算机网络系列博客打包下载, 主要面向正在处于找工作阶段的本科生阅读

2015-04-08

epoll封装与测试代码

  在本部分我们实现一个较为好用实用的Epoll并发类, 由于实现代码与使用方式较简单, 因此就不在此赘述了, 下面我还使用了该类实现了一个基于Epoll的echo-server, 以演示该类的用法;   由于此处仅为Epoll类库的第一个版本, 因此错误之处必然会存在, 如果读者在阅读的过程中发现了该类库的BUG, 还望这篇博客的读者朋友不吝赐教; 而作者也会不断的更新该类库(主要更新代码我会发布到此处), 以处理新的业务需求;

2015-03-11

shutdown_close

  1.close终止了数据传送的两个方向;   而shutdown可以有选择的终止某个方向的数据传送或者终止数据传送的两个方向。

2015-03-09

Socket 类封装 改进版

实现中的几个注意点:   1 Socket类几个成员函数的访问权限为protected 使Socket类可以进行继承 但不允许私自使用;   2 TCPClient类的send receive方法使用了著名的writen readn 来源UNP 实现 解决了TCP的粘包问题   3 TCPSe

2015-03-09

est_for_shutdown_and_close源代码

  1.close终止了数据传送的两个方向;   而shutdown可以有选择的终止某个方向的数据传送或者终止数据传送的两个方向。   2.shutdown how=SHUT_WR(关闭写端)可以保证对等方接收到一个EOF字符(FIN段),而不管是否有其他进程已经打开了套接字(shutdown并没采用引用计数)。   而close需要等待套接字引用计数减为0时才发送FIN段。也就是说直到所有的进程都关闭了该套接字。

2015-03-09

test_for_shutdown_and_close

  1.close终止了数据传送的两个方向;   而shutdown可以有选择的终止某个方向的数据传送或者终止数据传送的两个方向。   2.shutdown how=SHUT_WR(关闭写端)可以保证对等方接收到一个EOF字符(FIN段),而不管是否有其他进程已经打开了套接字(shutdown并没采用引用计数)。   而close需要等待套接字引用计数减为0时才发送FIN段。也就是说直到所有的进程都关闭了该套接字。

2015-03-09

Socket-类封装

实现中的几个注意点:   1)Socket类几个成员函数的访问权限为protected, 使Socket类可以进行继承,但不允许私自使用;   2)TCPClient类的send/receive方法使用了著名的writen/readn(来源UNP)实现, 解决了TCP的粘包问题.   3)TCPServer端添加了地址复用, 可以方便TCP服务器重启;   4)添加了异常类,让我们在编写易出错的代码时,可以解放思想,不用一直考虑该函数调用出错会发生什么情况!

2015-02-28

echoServer(按行读取版本)

使用recv_peek实现按行读取readline(只能用于socket)

2015-02-27

echoServer定长包与添加报头版本

自定义应用层协议实践 发报文时:前四个字节长度+报文内容一次性发送; 收报文时:先读前四个字节,求出报文内容长度;根据长度读数据。 发送结构:

2015-02-27

基于多进程的P2P聊天程序

server端与client都有两个进程:   父进程负责从socket中读取数据将其写至终端, 由于父进程使用的是read系统调用的阻塞版本, 因此如果socket中没有数据的话, 父进程会一直阻塞; 如果read返回0, 表示对端连接关闭, 则父进程会发送SIGUSR1信号给子进程, 通知其退出;   子进程负责从键盘读取数据将其写入socket, 如果键盘没有数据的话, 则fgets调用会一直阻塞;

2015-02-27

echoserver多进程版

  我们的echo服务器最大的缺点就是无法支持多客户连接,即使客户端能够连接到服务器上,服务器也不为该客户做服务,(直接没什么反应),虽然链接是有的(也就是说,客户端是已经连接到服务器上的了,但是服务器就是不搭理你....)

2015-02-26

红黑树(RBtree)实现代码

一个基于C++的红黑树实现, RedBlackTree, C++, 二叉树, 平衡二叉树

2015-02-17

线程池(C/C++版)

C/C++ threadpool封装, 线程池, Linux, 多线程, pthread

2015-02-16

生产者消费者代码(C++版)

用Posix信号量, Posix互斥量, 解决生产者消费者问题(c++版)

2015-02-13

echoServer(thread版)源代码

将并发echo server改造成多线程形式   注意线程竞速问题的解决

2015-02-11

ShmFifo源代码(C++版)

  我们首先完成C语言版本的shmfifo(基于过程调用), 然后在此基础上实现C++版本的ShmFifo, 将1块共享内存与3个信号量(1个mutext信号量, 1个full信号量, 1个empty信号量)封装成一个类ShmFifo, 然后编写各自的测试代码

2015-02-10

shmfifo源代码(C语言版)

使用消息队列即可实现消息的先进先出(FIFO), 但是使用共享内存实现消息的先进先出则更加快速; 所涉及计数: 将申请到的共享内存作为一块缓冲区, 读/写进程不断的从其中读出/写入数据, 而读/写进程则就相当于生产者/消费者了, 因此,使用信号量sem_mutex(初值为1)来互斥访问共享内存, 使用sem_full(初值为共享缓冲区块数), sem_empty(初值为0)来同步两个进程;

2015-02-10

NetCat后门工具

Netcat,Windows后门工具,希望能够遵守相关法律,谢谢

2014-01-25

C++面向对象多线程编程.pdf

挺好的一本书,朋友给分享的,分享给大家,大家就不用到淘宝买PDF版得了

2013-11-12

C++ 多范型设计.pdf

挺好的一本书,朋友给分享的,分享给大家,大家就不用到淘宝买PDF版得了

2013-11-12

C++程序员必备常识.pdf

挺好的一本书,朋友给分享的,分享给大家,大家就不用到淘宝买PDF版得了

2013-11-12

C++ 编程思想 第2卷 实用编程技术.pdf

挺好的一本书,朋友给分享的,分享给大家,大家就不用到淘宝买PDF版得了

2013-11-12

C/C++语言硬件程序设计基于TMS320C5000系列DSP

挺好的一本书,朋友给分享的,分享给大家,大家就不用到淘宝买PDF版得了

2013-11-12

C 库函数 Word版

C 库函数 Word版 千辛万苦找打的 的确很有用

2013-10-25

GDAL1.8 已经编译完成

一个师兄发给的GDAL1.8 已经编译完成的 省去了大家自己编译繁琐的步骤 遥感 图像处理

2013-10-25

Java 程序员上班那点事儿

Java 程序员上班那点事儿 全本 清晰扫描版 花了两块大洋买的

2013-10-24

C++ 标准模版库

C++ STL (Standard Template Library标准模板库) 是通用类模板和算法的集 合,它提供给程序员一些标准的数据结构的实现如 queues(队列), lists(链表), 和 stacks(栈)等. C++ STL 提供给程序员以下三类数据结构的实现: 标准容器类 顺序性容器 vector 从后面快速的插入与删除,直接访问任何元素 deque 从前面或后面快速的插入与删除,直接访问任何元素 list 双链表,从任何地方快速插入与删除 关联容器 set 快速查找,不允许重复值 multiset 快速查找,允许重复值 map 一对多映射,基于关键字快速查找,不允许重复值 multimap 一对多映射,基于关键字快速查找,允许重复值 容器适配器 stack 后进先出 queue 先进先出 priority_queue 最高优先级元素总是第一个出列

2013-10-20

codeblocks12.10汉化包

code blocks 汉化插件 1 解压压缩文件 将codeblocks mo文件放到codeblocks根目录下: CodeBlocks share CodeBlocks locale zh CN (locale和zh CN没有的话自己新建) 2 重启codeblocks: "setting environment view internationnal "构选这个选项 下拉框中选中“chinese” ok">code blocks 汉化插件 1 解压压缩文件 将codeblocks mo文件放到codeblocks根目录下: CodeBlocks share CodeBlocks locale zh CN (locale和zh CN没有的话自己新建) 2 重启codeblocks: "setting environment view internationnal "构选这个选项 下拉 [更多]

2013-08-09

C_free_中文版

很好用的一个C/C++开发工具,安装是需要加载密匙,只要百度一下就可以.

2013-08-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除