askunix

askunix@163.com

APUE学习笔记(第十三章:守护进程)

概念: 守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任务。...

2018-12-29 16:01:23

阅读数 150

评论数 1

使用setjmp和longjmp函数实现跨函数跳转

setjmp和longjmp函数的跳转有别于goto语句。它是指在栈空间上的跳转。用于函数间跳转时,调用longjum函数以返回到程序的主循环中,而不是从该处理程序返回。 这是一段实例代码: 运行结果: ...

2018-12-20 17:04:50

阅读数 126

评论数 0

APUE学习笔记(第十一章:线程)

1、每个线程在进行事件处理时可以采用同步编程模式,同步编程要比异步编程模式简单得多。 2、有人把多线程的程序设计与多处理器或多核系统联系起来。但是即使程序运行在单处理器上,也能得到多线程编程的模型的好处。 3、处理器的数量并不影响程序结构,所以不管处理器的个数多少,程序都可以通过使用线...

2018-12-19 21:06:36

阅读数 63

评论数 0

APUE学习笔记(第十章:信号)

信号的概念: 信号是软件中断。信号提供一种处理异步事件的方法。 信号被定义为正整数常量,定义在<signal.h>中。 在某个信号出现时,可以告诉内核以三种方式处理:忽略、捕捉、执行系统默认动作。 信号相关的函数: 函数signal void (*sig...

2018-12-19 16:29:51

阅读数 68

评论数 0

APUE学习目标

近期正在看APUE,之前对UNP略有了解。并有过简单的编程经验。 看了一周的APUE,文件IO、标准IO、环境变量、进程、信号、等都看完了,并敲了一些习题代码。阅读效果不是很高。所以写一篇文章总结一下原因,并定个阅读目标。 APUE主要是从文件操作、进程间通信的学习。学习Unix核心思想,一切...

2018-12-19 11:13:25

阅读数 94

评论数 0

APUE学习笔记(第八章:进程控制)

引言: 每个进程都有一个非负整型表示的唯一进程。虽然唯一,但是进程ID可以复用。 大多数UNIX系统实现延迟复用算法,使得赋给新建进程的ID不同于最近终止进程所使用的ID。这防止了将新进程认为是使用同一ID的某个已终止的先前进程。 ID为0的进程是调度进程,也称交换进程。该进程是内核的一部分...

2018-12-17 14:48:26

阅读数 81

评论数 0

模拟实现ls-l功能

功能描述: 用unix文件和目录函数遍历一个目录下的所有文件,包括子目录,并分别把信息输出到文件和标准输出上。列举每个文件的权限相关信息,列举每个目录的相关信息。 代码实现: #include <stdio.h> #include<...

2018-12-13 19:04:46

阅读数 282

评论数 0

Unix下的内存管理

Linux内存管理 程序和内存: 程序是指在硬盘上的可执行文件(硬盘上的文件有:普通文件、目录文件、块特殊文件、字符特殊文件、FIFO、套接字、符号链接)。 当程序被运行时,需要将可执行文件加载到内存,在内存中的可执行文件形成进程(也就是加载到内核中了)。 一个进程文件可以存在多个进程内存。 内...

2018-12-12 15:37:20

阅读数 153

评论数 0

STL中的map和hash_map区别

1、STL的map底层是用红黑树实现的,查找时间复杂度是log(n); 2、STL的hash_map底层是用hash表存储的,查询时间复杂度是O(1); hash_map,首先分配一大片内存,形成许多桶。是利用hash函数,对key进行映射到不同区域进行保存。 其插入过程: 1、得到key...

2018-12-12 10:11:44

阅读数 198

评论数 0

HTTP服务器框架代码分析(三)

HTTP服务器框架分析(一) HTTP服务器框架分析(二) 1、头文件 #define SIZE 1024 typedef struct Request { char first_line[SIZE]; char *method; char *url; char *url...

2018-12-12 10:11:25

阅读数 127

评论数 1

项目:HTTP服务器框架分析(二)

项目:HTTP服务器框架分析(一) 1、什么是HTTP和HTTPS? HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。 安全套接字层超文本传输协议HT...

2018-12-12 10:11:03

阅读数 94

评论数 0

项目:HTTP服务器框架分析(一)

0、项目描述 项目名称:世界时间 基于HTTP服务器框架的世界时间查询器,采用多线程处理多客户端连接请求,具体的还要分析请求是静态请求还是动态请求,静态请求直接返回对应URL目录中的HTML资源,动态请求使用了CGI技术处理具体业务,接收到城市名称后,就从后台MySQL数据库中取该城市与北京时...

2018-12-12 10:10:40

阅读数 219

评论数 0

四种强制类型转换

四种强制类型转换在实际开发中使用场景比较较多,做以下总结: (一)用法:static_cast <类型说明符> (变量或表达式) 它主要有如下几种用法: (1)用于类层次结构中基类和派生类之间指针或引用的转换 进行上行转换(把派生类的指针或引用转换成基类...

2018-12-08 17:14:54

阅读数 942

评论数 0

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