自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 c++变量初始化规则

#include #include #include #include #include using namespace std;#define num 10000class BClass{public: BClass() : i(1), ci(2), ri(i){} // 对于常量型成员变量和引用型成员变量,必须通过参数化列表的方式进行初始化 //普通成员变量也可以放在函数

2016-08-29 21:42:45 805

原创 linux任务调度机制

进程调度在近几个版本中都进行了重要的修改。我们以2.6.9版为例过行分析。在进行具体的代码分析之前。我们先学习一下关于进程调度的原理。1:进程类型在linux调度算法中,将进程分为两种类型,即:I/O消耗型和CPU消耗型。例如文本处理程序与正在执行的Make的程序。文本处理程序大部份时间都在等待I/O设备的输入,而make程序大部份时间都在CPU的处理上。因此为了提高响应速度,I/O消耗程

2016-08-28 17:24:49 8310

转载 c++继承和组合的区别

类的组合和继承一样,是软件重用的重要方式。组合和继承都是有效地利用已有类的资源。但二者的概念和用法不同。通过继承建立了派生类与基类的关系,它是一种 “是(is a)”的关系,如“白猫是猫”,“黑人是人”,派生类是基类的具体化实现,是基类中的一 种。通过组合建立了成员类与组合类(或称复合类)的关系,换句话说就是"有(has a)的关系".在功能上来看,它们都是实现系统功能重用,代码复用的最常用的有效

2016-08-27 21:59:44 5389

原创 linux守护进程浅析

守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任务。比如,作业规划进程crond,打印进程lpd等。 守护进程的编程本身并不复杂,复杂的是各种版本的Unix的

2016-08-27 17:47:53 504

原创 Linux线程常见属性小结

我们知道现代操作系统一般都支持多线程,线程是操作系统调度的基本单位,进程是操作系统分派资源的基本单位,所以对线程属性的掌握也十分重要,首先让我们来看看pthread_attr_t这个结构体://线程属性结构如下: typedef struct { int etachstate; //线程的分离状态 int

2016-08-27 17:38:03 532

原创 Linux进程和线程的区别

我们知道一个程序是计算机若干指令顺序执行的集合,在单进程且单线程的程序中,所有指令从头到尾线性执行,没有并发性,但是在引入多线程之后,同一个进程中的指令可以并发执行,这就是多线程的基本思想.1.进程和线程的创建方式:首先看看线程创建函数:线程创建函数:pthread_create函数 原型:int pthread_create((pthread_t *thread, p

2016-08-25 17:47:21 524

原创 Linux线程池实现并行排序

在多线程编程中,如果一个应用需要频繁的创建和销毁线程,而任务执行的时间又非常短,那么cpu的时间都花在线程的创建和销毁上。此时就应该使用线程池。如果线程的创建和线程的销毁相比任务的执行时间可以忽略不计,就没有必要使用线程池了.下面我们就来看看一个简单的实现:#include #include #include #include #include #include #include

2016-08-25 12:15:38 1165 3

原创 linux线程栈的若干思考

线程包含了表示其行环境必需的信息,其中包括进程中标示线程的线程ID,一组寄存器值,栈,调度优先级和策略, 信号屏蔽字,errno变量以及线程私有数据。进程的所有信息对该进程的所有线程都是共享的,包括可执行的程序文本,程序的全局内存和堆内存,栈以及文件描述符,所以线程的mm_struct *mm指针变量和所属进程的mm指针变量相同。

2016-08-23 22:01:23 793

原创 linux线程私有数据详解

在单线程程序中,函数经常使用全局变量或静态变量,这是不会影响程序的正确性的,但如果线程调用的函数使用全局变量或静态变量,则很可能引起编程错误,因为这些函数使用的全局变量和静态变量无法为不同的线程保存各自的值,而当同一进程内的不同线程几乎同时调用这样的函数时就可能会有问题发生。而解决这一问题的一种方式就是使用线程私有数据。线程私有数据采用了一种被称为一键多值的技术,即一个键对应多个数值。访问数据时都

2016-08-22 22:07:00 6762 1

原创 c++内存池作用和优势

C/C++下内存管理是让几乎每一个程序员头疼的问题,分配足够的内存、追踪内存的分配、在不需要的时候释放内存——这个任务相当复杂。而直接使用系统调用malloc/free、new/delete进行内存分配和释放,有以下弊端:    1.调用malloc/new,系统需要根据“最先匹配”、“最优匹配”或其他算法在内存空闲块表中查找一块空闲内存,调用free/delete,系统可能需要合并空闲内存块

2016-08-20 11:31:53 7555

原创 unix线程通信方式总结

在unixgao'ji线程的同步方式有:        (1).互斥量        (2).读写锁:读写锁与互斥量相似,不过读写锁允许更高的并行性。互斥量要么是锁住状态,要么就是不加锁状态,而且一次只有一个线程可以对其加锁。读写锁可以有3种状态,读模式下加锁,写模式下加锁,不加锁状态。一次只有一个线程可以占有写模式的读写锁,但是多个线程可以同时占有读模式下的读写锁。        (

2016-08-20 11:23:47 964

原创 TCP建立连接的过程

在可靠的TCP网络通信中,客户端和服务器端通信建立连接的过程可简单表述为三次握手(建立连接的阶段)和四次挥手(释放连接阶段),下图是这两个阶段的一个完整的表述:其状态图可以表示为,   下面我们从建立连接开始逐步解析整个过程1.建立连接:2.传送数据:3.

2016-08-18 17:33:46 40701 1

原创 unix进程间通信方式(下)-unix域套接字

unix域套接字用于在同一台计算机上的进程间通信,虽然因特网域套接字可用于同一目的,但是unix域套接字的效率更高。unix

2016-08-11 21:21:01 3555

原创 unix环境I/O多路复用

I/O多路转接技术:先构造一张有关描述符的列表,然后调用一个函数,知道这些描述符中的一个已准备好进行I/O时,给函数才返回。在返回时,它告诉进程哪些描述符已准备好可以进行I/O。        poll、select、pselect这三个函数使我们能够执行I/O多路转接。1.select和pselect函数      I/O多路转接的标准函数,还有一个标准函数poll函数,

2016-08-10 23:08:08 936 2

原创 unix进程通信方式总结(下)

在前两篇博客http://blog.csdn.net/caoyan_12727/article/details/52049417和http://blog.csdn.net/caoyan_12727/article/details/52126405中对进程间的管道(pipe),命名管道(fifo),消息队列,信号量,信号,共享存储六种进程间的通信方式进行了总结,以上从(1)到(6)讲的是unix系统

2016-08-10 19:08:11 2264

原创 unix进程通信方式总结(中)

在上一篇博客已经总结了uinx进程通信方式:管道(pipe),命名管道(FIFO),消息队列,信号量,信号,那么接下来让我们看看其他的三种重要的进程间通信方式:共享存储,unix (6)共享存储  (7)unix网络套接字   (8)unix域套接字

2016-08-06 17:27:52 1650

原创 unix进程通信方式总结(上)

本文将《unix环境高级编程》一书中所涉及的几种重要的进程间通信方式(Inter-Process Communication)进行简单总结,总的来说,进程间通信有以下几种:(1).

2016-08-06 00:52:14 4041

原创 TCP的可靠传输的保证和拥塞控制

TCP和UDP是传输层的两个非常重要的协议,其中相对于TCP来说,UDP的是不可靠传输,实现机制比较简单。首先我们来看看TCP数据包的格式:

2016-08-05 21:32:11 4321

空空如也

空空如也

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

TA关注的人

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