摘要: 定义 记录锁:当一个进程对一个文件的某个部分或者整个文件作读操作或者修改时,记录锁可以阻止另一个进程修改文件的同一区域。 由其定义,可以知: 记录锁是对文件的一定范围,包括整个文件进行保护 记录锁的3个要素是:进程ID,文件范围,操作。也就是说判断记录锁是否产生排斥需要依据这3点。 ... 阅读全文
posted @ 2015-12-29 15:22 thammer 阅读(472) 评论(0) 推荐(0) 编辑
摘要: 在linux多线程编程中,线程的执行顺序是不可预知的,但是有时候由于某些需求,需要多个线程在启动时按照一定的顺序执行,虽然可以使用一些比较简陋的做法,例如:如果有3个线程 ABC,要求执行顺序是A-->B-->C,可以create A--->sleep---->create B---->slee... 阅读全文
posted @ 2015-12-29 14:12 thammer 阅读(736) 评论(0) 推荐(0) 编辑
摘要: 设置文件创建掩码的函数是umaskmode_t umask(mode_t mask); mask是设置的掩码,返回值是之前的掩码。掩码由一下1个或者多个mode与操作组成。 The following symbolic constants are provided f... 阅读全文
posted @ 2015-12-26 15:51 thammer 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 函数的可重入和线程安全是针对于2种不同的使用场景提出的概念。 可重入函数这一概念是针对于一个进程中单个线程,指的是一个函数如果在调用期间被中断,在中断中再次进入这个函数执行完毕后,恢复原来的中断点执行时,不会出现错误。 线程安全这个概念是针对多进程,多线程编程中产生的。指的是一个函数被并发调... 阅读全文
posted @ 2015-12-24 13:34 thammer 阅读(476) 评论(0) 推荐(0) 编辑
摘要: SYNOPSIS #include int sigemptyset(sigset_t *set); int sigfillset(sigset_t *set); int sigaddset(sigset_t *set, int signum); ... 阅读全文
posted @ 2015-12-04 16:54 thammer 阅读(858) 评论(0) 推荐(0) 编辑
摘要: 中断是嵌入式系统中重要的组成部分,但是在标准C中不包含中断。许多编译开发商在标准C上增加了对中断的支持,提供新的关键字用于标示中断服务程序 (ISR),类似于__interrupt、#program interrupt等。当一个函数被定义为ISR的时候,编译器会自动为该函数增加中断服务程序所需要... 阅读全文
posted @ 2015-12-03 19:21 thammer 阅读(5557) 评论(0) 推荐(2) 编辑
摘要: 看到apue的第十章,说到alarm,pause可以实现sleep,可以让某些一直阻塞的函数超时,例如read,write。代码如下: 1 static void sig_alrm(int signo) 2 { 3 printf("I'm just print from sig_alrm... 阅读全文
posted @ 2015-12-02 17:08 thammer 阅读(616) 评论(0) 推荐(0) 编辑
摘要: 定义. 1.孤儿进程,就是父进程先于子进程退出,子进程会被挂到init进程(1号进程)下作为init的子进程,init进程对其进行管理。 2.僵死进程,就是子进程退出了,但是父进程没有对它进行善后处理,一个进程退出,操作系统会释放其打开的文件,所占用的内存,但是会留下一些信息比如退出状态,运行时... 阅读全文
posted @ 2015-11-22 16:06 thammer 阅读(727) 评论(0) 推荐(0) 编辑
摘要: 在看APU时,第8章进程时, 编译执行程序,得到: 换一个方式执行,将程序执行结果重定向到一个文件: 发现前后2此结果不一样,第一个printf输出了2次,这是因为printf是属于标准IO,他的输出是带缓冲的,程序上面使用write进行输出却不会这样,write是不带缓冲的。 缓冲的目的是尽量减少 阅读全文
posted @ 2015-11-20 21:59 thammer 阅读(499) 评论(0) 推荐(0) 编辑
摘要: 通常,进行嵌入式开发的时候,调试信息都是通过串口来输出的,但是有时候某些问题必须到特定的现场才能重现,客户不一定有配套的串口线,或者根本没用过诸如SecureCRT这类的工具,你还得寄串口线,写个文档让他帮你抓log,还要人家原意,不过有其他更大众的方法,就是把log信息写入到u盘里的一个文件,通常 阅读全文
posted @ 2015-11-14 11:58 thammer 阅读(879) 评论(0) 推荐(0) 编辑