《UNIX网络编程》中五种I/O方式总结和对比

UNIX提供了五种不同的I/O模型: 阻塞式I/O模型 非阻塞式I/O模型 I/O复用模型 信号驱动式I/O模型 异步I/O模型 阻塞式I/O模型阻塞式I/O模型是最基本的I/O模型。在默认情况下,所有套接字都是阻塞的,以数据报套接字为例:当系统调用recvfrom系统调用函数时,当内核socke...

2017-11-29 13:16:39

阅读数:611

评论数:0

《UNIX网络编程》wait和waitpid函数

之前的内容里我们用wait来处理已经终止的子进程,waitpid的功能和wait类似,但也有区别。 wait和waitpid的函数模型:pid_t wait(int *statloc); pid_t waitpid(pid_t pid, int *statloc, int options);返回...

2017-07-26 22:24:41

阅读数:173

评论数:0

《UNIX网络编程》多线程TCP C/S服务器正常启动和正常结束过程剖析

一、启动过程1、服务器启动后,它调用socket、bind、listen、accept, 并阻塞accept调用(我们还没有启动客户) 2、客户启动并调用socket和connect,后者引起TCP三路握手过程。当三路握手完成后,客户中的connect和服务器中的的accept均返回,连接建立。...

2017-07-24 19:50:49

阅读数:199

评论数:0

《Unix网络编程》 多进程并发服务器基本模型

多进程并发服务器的基本原理是:对于每一个客户的访问请求,都fork一个子进程来处理这个请求。程序轮廓:pid_t pid; int listenfd, connfd;listenfd = Socket(...); Bind(listenfd, LISTENQ); while(1) { ...

2017-07-18 13:52:30

阅读数:171

评论数:0

《Unix网络编程》Unix/Linux中exec系函数辨析

Unix/Linux中exec系函数辨析

2017-07-18 12:35:43

阅读数:121

评论数:0

Ubuntu 17.04中缺失libssl.so.10的解决办法

先保证SSL已经被安装sudo apt-get update sudo apt-get install libssl1.0.0 libssl-dev创建软连接cd /lib/x86_64-linux-gnu sudo ln -s libssl.so.1.0.0 libssl.so.10 sudo ...

2017-07-06 16:05:10

阅读数:3922

评论数:0

Emacs 快速入门指南

Emacs 快速指南.(查看版权声明请至本文末尾)【注意:位于【】之间的内容是译注,比如本行,下同。】Emacs 键盘命令通常包含 CONTROL 键(有时候以 CTRL 或 CTL 来标示)和 META 键(有时候用 EDIT 或 ALT 来标示)。为了避免每次都要写出全名,我们 约定使用下...

2017-02-17 23:55:10

阅读数:160

评论数:0

SICP 2.59 集合的合并union_set

现在有两个集合set1 和 set2, 需要将这两个集合合并成一个集合。 思路很简单: 顺序查找set1中的元素set2是否包含,是,则找下一个,否,加入到set2。 最后返回set2scheme 实现:(define (union_set set1 set2) (if (null?...

2017-01-26 15:46:25

阅读数:146

评论数:0

在Linux下搭建51单片机的开发烧写环境

在Linux下搭建51单片机的开发烧写环境

2016-11-13 01:09:02

阅读数:10466

评论数:2

Linux启动过程步骤详解

转载自:http://blog.chinaunix.net/uid-26495963-id-3066282.html 启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。这是因为BIOS中包含了CPU...

2016-10-27 15:07:21

阅读数:157

评论数:0

Linux 中的 /dev/null 和 /dev/zero 设备

Linux 中的 /dev/null 和 /dev/zero 设备

2016-10-27 15:00:38

阅读数:483

评论数:0

网络文件系统nfs文件系统使用

转自:http://www.cnblogs.com/yc_sunniwell/archive/2010/06/30/1768474.html 一、NFS简介 1、NFS就是Network FileSystem的缩写,它的最大功能就是可以通过网络让不同的机器,不同的操作系统彼此共享文件(shar...

2016-10-27 14:23:03

阅读数:234

评论数:0

linux驱动程序makefile文件的解释

linux驱动程序makefile文件的解释

2016-10-25 17:07:27

阅读数:229

评论数:0

Linux之日志系统

Linux之日志系统 实验介绍 日志数据可以是有价值的信息宝库,也可以是毫无价值的数据泥潭。它可以记录下系统所产生的所有行为,并按照某种规范表达出来。我们可以使用日志系统所记录的信息为系统进行排错,优化系统的性能,或者根据这些信息调整系统的行为。收集你想要的数据,分析出有价值的信息,可...

2016-10-21 00:17:05

阅读数:458

评论数:0

linux中几种查找文件方式的比较

方法一: whereis 命令 whereis命令快捷方便,但是仅仅限于二进制文件。 方法二: locate命令 locate命令查找快而全面,它通过通过"/var/lib/mlocate/mlocate.db"数据库查找,但是此数据库每天更新一次,可能有些当时的文件查不...

2016-10-20 23:24:45

阅读数:143

评论数:0

解决makefile不兼容的问题:make降级

make自被大神RSM发布以来已经经历了许多次语法更新,所以时常有 makefile语法不兼容的问题,最好的方法便是回滚到旧版本。 1.下载目标make源码,地址 ftp.gnu.org/gnu/make 2.用tar解压 3.执行./configuration 4.执行 build.sh...

2016-10-13 23:59:18

阅读数:534

评论数:0

简单的字符设备驱动模型

字符设备是指在I/O传输过程中以字符为单位进行传输的设备,这种设备没有缓存,例如键盘,打印机等。#include< linux/module.h> #include< linux/sche.h> #include< linux/kernel.h> #includ...

2016-10-13 23:46:46

阅读数:125

评论数:0

文件/etc/fstab

文件/etc/fstab包含了静态文件系统信息,定义了存储设备和分区整合到整个系统的方式。mount 命令会读取这个文件,确定设备和分区的挂载选项。 字段定义 /etc/fstab 文件包含了如下字段,通过空格或 Tab 分隔:  - 要挂载的分区或存储设...

2016-09-28 09:36:40

阅读数:160

评论数:0

linux设备驱动中file_operations结构体分析

struct module *owner 第一个 file_operations 成员根本不是一个操作; 它是一个指向拥有这个结构的模块的指针. 这个成员用来在它的操作还在被使用时阻止模块被卸载. 几乎所有时间中, 它被简单初始化为 THIS_MODULE, 一个在 中定义的宏. loff_t ...

2016-09-24 10:23:49

阅读数:243

评论数:0

Linux 命令:wget

用法: wget [选项]... [URL]... 作用:下载文件,支持断点续传

2016-09-14 00:26:59

阅读数:263

评论数:2

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