linux
hc-hc
这个作者很懒,什么都没留下…
展开
-
哲学家就餐问题
问题描述: 有五个哲学家绕着圆桌坐,每个哲学家面前有一盘面,两人之间有一支筷子,这样每个哲学家左右各有一支筷子。哲学家有2个状态,思考或者拿起筷子吃饭。如果哲学家拿到一只筷子,不能吃饭,直到拿到2只才能吃饭,并且一次只能拿起身边的一支筷子。一旦拿起便不会放下筷子直到把饭吃完,此时才把这双筷子放回原处。如果,很不幸地,每个哲学家拿起他或她左边的筷子,那么就没有人可以吃到饭了. 分析问题: 1.有五个哲学家,5个筷子. 2.只有一个哲学家拿到左右两个筷子时,才可以进餐. 3.那么食物就是五个哲学家的共享资源,哲原创 2020-06-05 18:56:18 · 526 阅读 · 1 评论 -
Linux c生产者消费者模型
一.生产者消费者问题 生产者消费者共享缓冲区,生产者向缓冲区中放数据,消费者从缓冲取中取数据,当缓冲区中被放满时,生产者进程就必须进入挂起状态,直到消费者从缓冲中取走数据时,生产者才能继续向缓冲区中存放数据,同样当缓冲取中没有数据时,消费者进程就必须进入挂起休眠状态,直到生产者向缓冲区中放入数据时,消费者才能被唤醒继续从缓冲区中取走数据。 1. 单生产者和单消费者 (用条件变量来实现) 1.生产者和消费者各用一个线程 pthread_t p1; pthread_t p2; 2. 生产者生产物原创 2020-06-05 18:55:35 · 306 阅读 · 1 评论 -
my_ls总结
刚开始写my_ls很没有头绪,因为对一些函数都很陌生,看过就又忘了,所以刚开始,就是照着Linux_c文件操作后面的例子抄的,然后通过函数之间的调用,慢慢的读代码,然后最后有了思路之后,就自己重新写了一个. 首先ls中主要就是应用了Linux文件操作的相关知识. 获取目录信息的函数 (1).opendir函数 ----------->用来打开参数name指定的目录 函数所需头文件: #i...原创 2020-04-07 10:08:42 · 393 阅读 · 0 评论 -
linux-c进程控制
一.进程相关的概念: 1.什么是程序? 答:编译好的二进制文件 2.什么是进程? 答:运行着的程序, 运行一系列指令的过程, 在操作系统角度:分配系统资源的基本单位 3.程序与进程的区别? 答:(1) 程序占用磁盘,不占用系统资源 (2) 内存占用系统资源 (3) 一个程序对应多个进程,一个进程对应一个程序 (4) 程序没有生命周期,进程由生命周期 4.单道...原创 2020-03-29 18:22:36 · 201 阅读 · 2 评论