转自http://blog.csdn.net/challenge_c_plusplus/article/details/40784179 思考一种高性能的服务器处理框架1、首先需要一个内存池,目的在于:·减少频繁的分配和释放,提高性能的同时,还能避免内存碎片的问题;·能够存储变长的数据,不要很傻瓜地只能预分配一个最大长度;·基于SLAB算法实现内存池是一个好的思路:分配不同大小的多个块,
epoll是一种IO多路复用技术,可以非常高效的处理数以百万计的socket句柄,比起以前的select和poll效率高很多。先简单回顾下如何使用C库封装的3个epoll系统调用吧。1 int epoll_create(int size); 2 int
linux 管道管道是Linux中很重要的一种通信方式,是把一个程序的输出直接连接到另一个程序的输入,常说的管道多是指无名管道,无名管道只能用于具有亲缘关系的进程之间,这是它与有名管道的最大区别。有名管道叫named pipe或者FIFO(先进先出),可以用函数mkfifo()创建。Linux管道的实现机制在Linux中,管道是一种使用非常频繁的通信机制。从本质上说,管道也是一种文件,但它又和一般
在操作系统,进程是很重要的概念!!!! 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当
关于文件描述符的重定向,有三种方法,分别为dup(),dup2(),dup3()。下面即为三种函数的原型,本文主要介绍前两种函数的使用。其中dup()接受一个参数,将旧的文件描述符重定向到新的文件中。而dup2()接受两个参数,一个为新的文件描述符,另一个为旧的文件描述符。dup3()的原理同dup2()。 下图是三种函数的相关描述:这些函数的返回值为,成功则返回新的文件描述符,失败返回
每个进程都有非负的整型表示唯一的进程ID。进程是一个数据结构变量,有多少个进程,就有多少个PCB。几个典型进程的ID及其类型和功能: ID 进程名 中文名 类型&
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号