![](https://img-blog.csdnimg.cn/direct/95d1869927d848db98f8797f385bc01a.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
系统编程
文章平均质量分 82
主要是一些文件操作、多进程编程、多线程编程。
天糊土
对嵌入式非常感兴趣。
展开
-
多线程编程——实现线程同步的方法(互斥锁、信号量、条件变量、读写锁)
Linux 环境中,实现线程同步的常用方法有 4 种,分别称为互斥锁信号量条件变量和读写锁。互斥锁(Mutex)又称互斥量或者互斥体,是最简单也最有效地一种线程同步机制。互斥锁的用法和实际生活中的锁非常类似,当一个线程访问公共资源时,会及时地“锁上”该资源,阻止其它线程访问;访问结束后再进行“解锁”操作,将该资源让给其它线程访问。信号量又称“信号灯”,主要用于控制同时访问公共资源的线程数量,当线程数量控制在 ≤1 时,该信号量又称二元信号量,功能和互斥锁非常类似;原创 2024-01-18 23:28:31 · 1236 阅读 · 0 评论 -
多线程编程——线程的属性
以下内容源于C语言中文网的学习与整理,非原创,如有侵权请告知删除。如果只是学习简单的多线程编程,本文内容可以暂时忽略。在利用pthread_create() 函数创建线程时,第二个参数设置为NULL即可。原创 2024-01-18 18:33:12 · 1061 阅读 · 0 评论 -
多线程编程——线程对Cancel信号的处理机制
以下内容源于C语言中文网的学习与整理,非原创,如有侵权请告知删除。原创 2024-01-18 18:03:54 · 959 阅读 · 0 评论 -
多线程编程——多线程编程涉及的API
以下内容源于网络资源的学习与整理,如有侵权请告知删除。原创 2024-01-18 17:37:26 · 1018 阅读 · 0 评论 -
Linux进程编程5——进程间通信(IPC)概述
以下内容源于网络资源的学习与整理,如有侵权请告知删除。原创 2017-07-14 09:16:26 · 456 阅读 · 0 评论 -
Linux进程编程4——父子进程对文件的操作
以下内容源于网络资源的学习与整理,如有侵权请告知删除。原创 2017-07-13 09:41:36 · 4166 阅读 · 0 评论 -
Linux进程编程3——守护进程
以下内容源于网络资源的学习与整理,如有侵权请告知删除。原创 2017-07-14 09:16:09 · 1910 阅读 · 0 评论 -
Linux进程编程2——与“进程”相关的API
以下内容源于网络资源的学习与整理,如有侵权请告知删除。原创 2017-07-13 09:41:28 · 2283 阅读 · 0 评论 -
Linux进程编程1——与“进程”相关的常识
以下内容源于网络资源的学习与整理,如有侵权请告知删除。原创 2017-07-12 20:11:49 · 504 阅读 · 0 评论 -
进程、线程简介
以下内容源于网络资源的学习整理,如有侵权,请告知删除。参考博客http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html(通俗理解)https://blog.csdn.net/chen_geng/article/details/51613445(表格总结,推荐)https://blog.csdn.net/jav...原创 2018-09-26 13:39:45 · 1047 阅读 · 0 评论 -
linux中的信号2——alarm、pause函数
以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。原创 2017-07-15 21:50:15 · 1438 阅读 · 0 评论 -
linux中的信号1——进程如何处理信号?
以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。原创 2017-07-15 21:49:28 · 696 阅读 · 0 评论 -
获取系统信息3——proc文件系统介绍和使用
以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。原创 2017-07-17 09:37:57 · 2666 阅读 · 0 评论 -
获取系统信息2——linux中使用随机数
以下内容源于朱有鹏《物联网大讲堂》课程的学习整理,如有侵权,请告知删除。1、随机数和伪随机数随机数是随机出现,没有任何规律的一组数列。真正的完全随机的数列是不存在的,只是一种理想情况。一般只能通过一些算法得到一个伪随机数序列。平时说到随机数,基本都指的是伪随机数。2、linux中随机数相关API连续多次调用rand函数可以返回一个伪随机数序列;sra...原创 2017-07-17 09:37:10 · 1945 阅读 · 0 评论 -
获取系统信息1——linux系统中的时间
以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。一、关于时间的概念1、GMT时间GMT是格林尼治时间,也就是格林尼治地区的当地时间;用格林尼治的当地时间作为全球国际时间,用以描述全球性的事件的时间,方便大家记忆。选这个地区,是因为它是天文学发源地。2、UTC时间GMT时间是以前使用的,近些年使用UTC时间;参考UTC和GMT时间 - 秋忆 - 博客园。3、计算机中与时间有关的部件点时间和段时间,段时间=点时间-点时间定时器和实时时钟,定时器(timer)定的时间就是段时间,实时时钟(RTC)是原创 2017-07-16 11:36:00 · 1054 阅读 · 0 评论 -
文件读写——如何实现非阻塞式IO?
以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。分别利用O_NONBLOCK标志、fcntl函数, 将上节中阻塞式的鼠标和键盘读取改为非阻塞式的。由上面的例子引出话题:并发式IO的解决方案,或者说多路阻塞式IO的解决方案。比如上面的例子中,鼠标与键盘都是阻塞式的IO设备(即多路阻塞),它们可能同时启动与输入数据(即并发式)。在上面例子中,我们使用fcntl函数和O_NONBLOCK标志解决了阻塞的问题,但是性能不是很好。其实还可以利用多路复用IO、异步IO来解决阻塞的问题。(1)方法原理原创 2017-07-15 21:50:49 · 2001 阅读 · 0 评论 -
文件读写——获取文件属性
以下内容源于朱有鹏嵌入式课程的学习整理与整理,如有侵权请告知删除。原创 2017-07-16 11:34:20 · 793 阅读 · 0 评论 -
文件读写——open函数的参数flags详解
以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。原创 2022-07-13 23:34:25 · 2648 阅读 · 0 评论 -
文件读写——文件IO的API(open、write、lseek、fcntl等)的用法
以下内容源于网络资源的学习与整理,如有侵权,请告知删除。原创 2022-07-13 23:19:15 · 896 阅读 · 0 评论 -
文件读写——文件描述符、文件IO与标准IO
我们通过fwrite写入的内容不再直接进入内核中的buf,而是先进入应用层标准IO库维护的buf中,然后标准IO库根据操作系统单次write的最佳count,来选择将内容write到内核中的buf的好时机,最后内核中的buf再根据硬盘的特性来选择将数据写入硬盘的好时机。(1)文件IO的API有:open,close,write,read,lseek,dup,dup2,fcntl等等。(1)两者都是使用函数,但标准IO使用的是C库函数,文件IO使用的是由Linux系统提供的API。原创 2017-04-02 15:14:48 · 4374 阅读 · 0 评论 -
文件读写——Linux系统如何管理文件(i节点、v节点)
以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。硬盘中的静态文件 内存中被打开的文件 IO流的概念原创 2022-07-13 16:44:28 · 389 阅读 · 0 评论