![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
unix
文章平均质量分 64
nullptr_
技术成就梦想
展开
-
LINUX中断机制与信号(http://linux.chinaitlab.com/soft/878170.html)
LINUX中断机制与信号 中断和异常 中 断(也称硬件中断) 定义 :中断是由其他硬件设备依照CPU 时钟周期信号随机产生的。 分类 : 可屏蔽中断 非可屏蔽中断 来源: 间隔定时器和I/O 异 常(也称软件中断) 定义 :当指令执行时由 CPU控制单元 产生的,异常也称为“异步中断”是因为只有在 一条指令终止执行后CPU 才会转载 2013-11-22 09:42:08 · 1038 阅读 · 0 评论 -
APUE——进程控制
1.进程标志符:原创 2014-08-01 10:52:21 · 539 阅读 · 0 评论 -
APUE——进程环境
C程序总是从main函数开始z原创 2014-07-30 20:56:00 · 455 阅读 · 0 评论 -
APUE——进程关系
1.进程组:每个进程除了有一个进程ID外,还shu yu原创 2014-08-01 16:57:57 · 497 阅读 · 0 评论 -
APUE——线程
1.一个进程中的所有线程都可以访问该进程的组成部件。原创 2014-08-06 09:42:40 · 415 阅读 · 0 评论 -
APUE——信号
1.信号概念:信号是软件中断。每个信号都原创 2014-08-05 20:53:16 · 520 阅读 · 0 评论 -
文件描述符和文件指针
文件描述符:在linux系统中,设备也是以文件的形式存在,要对该设备进行操作就必须先打开这个文件,打开文件就会获得文件描述符,它是个很小的正整数。每个进程在PCB(Process Control Block)中保存着一份文件描述符表,文件描述符就是这个表的索引,每个表项都有一个指向已打开文件的指针。文件描述符的优点:兼容POSIX标准,许多Linux和UNIX系统调用都依赖于它。文件描述符的缺点:转载 2014-07-30 16:57:46 · 396 阅读 · 0 评论 -
UNIX系统文件I/O总结
UNIX 系统中文件I/O的五个主要函数是:open原创 2014-05-31 20:36:26 · 555 阅读 · 0 评论 -
getaddrinfo()函数详解
1. 概述IPv4中使用gethostbyname()函数完成主机名到地址解析,这个函数仅仅支持IPv4,且不允许调用者指定所需地址类型的任何信息,返回的结构只包含了用于存储IPv4地址的空间。IPv6中引入了getaddrinfo()的新API,它是协议无关的,既可用于IPv4也可用于IPv6。getaddrinfo函数能够处理名字到地址以及服务到端口这两种转换,返回的是一个addrin转载 2013-12-25 20:59:29 · 701 阅读 · 0 评论 -
15分钟学会使用Git和远程代码库
摘要: Git是个了不起但却复杂的源代码管理系统。它能支持复杂的任务,却因此经常被认为太过复杂而不适用于简单的日常工作。让我们诚实一记吧:Git是复杂的,我们不要装作它不是。但我仍然会试图教会你用(我的)基本的Git ...Git是个了不起但却复杂的源代码管理系统。它能支持复杂的任务,却因此经常被认为太过复杂而不适用于简单的日常工作。让我们诚实一记吧:G转载 2013-12-25 21:02:48 · 462 阅读 · 0 评论 -
ubuntu调用pthread_create()函数时Undefined reference to 'pthread_create'的问题
在ubuntu平台下调用pthread_create()函数,用gcc编译时出现Undefined reference to 'pthread_create'的问题。代码中已经将pthread.h头文件包含进去了,还是没法通过,后来通过查找资料得知pthread库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用pthread_create()创建线程,原创 2013-11-25 21:55:26 · 2127 阅读 · 0 评论 -
pthread_cleanup_push/pop
void pthread_cleanup_push(void (*routine)(void*), void *arg);void pthread_cleanup_pop(int execute);//这里的int参数,0是不执行push的内容,非0是执行。原型很简单,功能跟atexit()差不多,只不过一个是线程一个是进程。用来设置在push/pop内线程退出时要做的事情。转载 2013-11-26 09:44:25 · 659 阅读 · 0 评论 -
apue程序清单10_6中信号处理程序提早终止的问题
在apue10.10节中,sleep2函数为避免alarm和pause之间的竞争条件,使用了setjmp和longjmp,原始实现如下:#include #include static voidsig_alrm(int signo){ /* nothing to do, just return to wake up the pause */}unsigned intslee原创 2013-11-24 10:40:37 · 1020 阅读 · 0 评论 -
LINUX中断机制与信号(http://blog.csdn.net/lichaoandy/article/details/5543713)
在学习APUE时学习信号编程,很多地方不是理解,便查阅了网络上的相关资料,最常见的一句话就是“信号是中断机制的一种模拟”,既然提到了中断,那就首先了解了一下中断的具体分类以及实现,最后再找出中断和信号的区别。LINUX中断机制与信号中断和异常 l 中 断(也称硬件中断)定义 :中断是由其他硬件设备依照CPU 时钟周期信号随机产生的。分类 : 可屏蔽转载 2013-11-23 11:27:25 · 713 阅读 · 0 评论 -
什么是堆和栈,它们在哪儿?
问题描述编程语言书籍中经常解释值类型被创建在栈上,引用类型被创建在堆上,但是并没有本质上解释这堆和栈是什么。我仅有高级语言编程经验,没有看过对此更清晰的解释。我的意思是我理解什么是栈,但是它们到底是什么,在哪儿呢(站在实际的计算机物理内存的角度上看)?在通常情况下由操作系统(OS)和语言的运行时(runtime)控制吗?它们的作用范围是什么?它们的大小由什么决定?哪个更快?转载 2014-08-16 15:46:41 · 413 阅读 · 0 评论