我读过的最好的epoll讲解

首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。     不管是文件,还是套接字,还是管道,我们都可以把他们看作流。     之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;通过write,我们...

2013-11-13 19:57:21

阅读数:1070

评论数:0

Vim 与系统剪切板交互

很多时候使用 Vim 编辑文本,总需要复制里面的东西出来,粘贴到其他地方,比如说网页,聊天窗口等等,而有些时候有需要从网页等地方复制文字过来粘贴到 Vim 正在编辑的文件里。这个两个过程应该怎么完成呢? 一般的解决方法 复制文本 当我们要将 Vim 里面的文本复制出来,往往会用鼠...

2013-09-12 09:46:10

阅读数:3966

评论数:0

写给那些让我糊里糊涂的HTTP、TCP、UDP、Socket

先来一个讲TCP、UDP和HTTP关系的,注意红色mark的部分   1、TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。 在传输层中有TCP协议与UDP协议。 在应用层有FTP、HTT...

2013-08-02 17:20:40

阅读数:752

评论数:0

如何在openSUSE上安装postgresql数据库

本文我们介绍如何在openSUSE安装postgresql数据库,就让我们通过下面的介绍介绍大家来了解一下安装步骤吧! 环境 我测试了在openSUSE 11.3上安装postgresql 8.4.6,也测试了在openSUSE 11.4上安装postgresql 9.0.3。步骤没有...

2013-07-24 17:49:13

阅读数:1007

评论数:0

采用CBP2MAKE工具由CODE::BLOCKS工程创建MAKEFILE文件

Linux下有一款非常好用的写C++的IDE,code::blocks,其采用自有的工程文件(.cbp)来组织相关源代码。但是有的时候希望能够脱离CB,以便于源代码的分享。常见开源项目采用makefile来组织源代码的编译。cbp2make可以很好的将CB的工程文件转换为makefile文件。 ...

2013-07-17 20:34:24

阅读数:2029

评论数:0

open/read/write和fopen/fread/fwrite的区别

open/read/write和fopen/fread/fwrite的区别   open:系统调用,返回的是文件描述符,即文件句柄,是文件在文件描述副表里的索引。 fopen:C语言库函数,返回的是一个指向文件结构的指针。fopen是ANSI C标准中的C语言库函数,在不同的操作系统中应该调...

2013-07-16 16:20:35

阅读数:751

评论数:0

在windows中安装ubuntu

关于Wubi        ubuntu很酷,8.04开始就正式提供了Wubi(基于windows的安装程序,Windows-based  Ubuntu  Installer),可以在windows系统中创建一个几GB的虚拟硬盘,将ubuntu独立安装在其中,并把windows系统的硬盘挂载...

2013-07-13 17:07:15

阅读数:7325

评论数:0

访问PostgreSQL:C语言接口

C语言接口   在与数据库连接方面,C语言是一种常用语言,许多数据库都是用C写的。该语言高效灵活,因此如果想要写一款客户端接口,不管是仅仅包含控制台还是基于GUI的,并且不想用到浏览器,C语言也许是最好的选择。   连接C语言与Postgres使用的库名为libpq,它与PostgreSQL源...

2013-07-12 10:51:53

阅读数:2765

评论数:0

I/O事件处理模型之Reactor和Proactor

Reactor模型 Reactor模式是处理并发I/O比较常见的一种模式,中心思想就是,将所有要处理的I/O事件注册到一个中心I/O多路复用器上,同时主线程阻塞在多路复用器上;一旦有I/O事件到来或是准备就绪(区别在于多路复用器是边沿触发还是水平触发),多路复用器返回并将相应I/O事件分发到...

2013-06-14 08:40:50

阅读数:780

评论数:0

Linux Epoll介绍和程序实例

1. Epoll是何方神圣? Epoll可是当前在Linux下开发大规模并发网络程序的热门人选,Epoll 在Linux2.6内核中正式引入,和select相似,其实都I/O多路复用技术而已,并没有什么神秘的。 其实在Linux下设计并发网络程序,向来不缺少方法,比如典型的Apache模型(P...

2013-05-29 17:17:10

阅读数:490

评论数:0

强制性锁建议性锁

fcntl有强大的功能,它能够复制一个现有的描述符,获得/设置文件描述符标记,获得/设置文件状态标记,获得/设置异步I/O所有权,获得/设置纪录锁。 当多个用户共同使用,操作一个文件的情况,Linux通常采用的方法就是给文件上锁,来避免共享资源产生竞争的状态。 fcntl文件锁有两种类...

2013-05-29 16:06:57

阅读数:701

评论数:0

Linux内存管理之mmap详解

Linux内存管理之mmap详解 一. mmap系统调用 1. mmap系统调用         mmap将一个文件或者其它对象映射进内存。文件被映射到多个页上,如果文件的大小不是所有页的大小之和,最后一个页不被使用的空间将会清零。munmap执行相反的操作,删除特定地址...

2013-05-27 20:48:07

阅读数:662

评论数:0

信号安全跟线程安全函数背后本质

看UNIX编程相关的书在讲信号的时候会列出一大堆的保证信号安全的函数,在讲线程的时候也会例出一些不保证线程安全的函数。需要把它们都记下来吗?我觉得太可不必,也不科学,不了解根本你很可能自己写出一个不安全的函数,然后在信号处理里或是多线程程序里使用,出了问题却莫名其妙!      一般来说如果函数...

2013-05-27 16:47:35

阅读数:478

评论数:0

经典vim插件功能说明、安装方法和使用方法介绍

1 #=============================================================================   2  转载请注明出处: http://blog.csdn.net/tge7618291                   ...

2013-05-24 11:13:25

阅读数:784

评论数:0

socket的通信过程

下图是基于TCP协议的客户端/服务器程序的一般流程: 服务器调用socket()、bind()、listen()完成初始化后,调用accept()阻塞等待,处于监听端口的状态,客户端调用socket()初始化后,调用connect()发出SYN段并阻塞等待服务器应答,服务器应...

2013-05-24 09:48:00

阅读数:751

评论数:0

Linux内核的ioctl函数学习

我这里说的ioctl函数是在驱动程序里的,因为我不知道还有没有别的场合用到了ioctl, 所以就规定了我们讨论的范围。为什么要写篇文章呢,是因为我前一阵子被ioctl给搞混了,这几天才弄明白它,于是在这里清理一下头脑。 一、 什么是ioctl。        ioctl是设备驱动程序中...

2013-05-14 10:13:23

阅读数:453

评论数:0

select、poll和epoll

一,POLL、 SELECT 、EPOLL 简介 select select最早于1983年出现在4.2BSD中,它通过一个select()系统调用来监视多个文件描述符的数组,当select()返回后,该数组中就绪的文件描述符便会被内核修改标志位,使得进程可以获得这些文件描述符从而...

2013-05-14 08:56:53

阅读数:584

评论数:0

线程与fork(2) (进程):把它们一起使用前,请谨慎考虑 (翻译)

本文译自: http://www.linuxprogrammingblog.com/threads-and-fork-think-twice-before-using-them 作者: Damian Pietras 转载请著名作者,译者和出处。   某天,我(原作者:Dam...

2013-05-10 15:08:14

阅读数:499

评论数:0

实际用户ID,有效用户ID、设置用户ID

解释一: 摘要:最近看APUE时为这几个ID困扰了很久,查找了很多资料后,终于感觉比较清晰了。先记在这里。或许还有些理解上的偏差,后续更正。本文主要讲述这几种ID的区别和联系。   实际用户ID:有的文章中将其称为真实用户ID,这个ID就是我们登陆unix系统时的身份ID。 ...

2013-05-06 17:25:34

阅读数:692

评论数:0

Linux远程下载文件的两种方法之 ftp命令和scp命令

ftp命令:  服务器有安装ftp Server,另外一台linux可以使用ftp的client程序来进行文件的拷贝读取和下载。  1. 连接ftp服务器    格式:ftp [hostname| ip-address]   a)在linux命令行下输入:ftp 192.168.2...

2013-05-03 09:56:35

阅读数:622

评论数:0

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