Linux
文章平均质量分 94
Linux学习记录
蒙多想去
繁星纵变,智慧永恒
展开
-
锁的作用,类型以及死锁
为什么需要锁 我们知道线程是可以共享进程的资源的,当多个进程同时使用同一个资源的时候,就会发生问题,下图展示了两个线程对同一个变量进行加法运算时的情况,理想状态下。A线程对i=50进行加+1后i=51,之后cpu切换线程B继续进行加1运算,此时i=52。但程序在实际运行中可能会出现错误,如下图: 当多线程相互竞争操作共享变量时,由于运气不好,即在执行过程中发生了上下文切换,我们得到了错误的结果,称之为竞争。操作共享资源的发代码成为临界区,为了解决竞争问题,我们可以让临界区互斥,也就是...原创 2021-07-09 15:58:10 · 639 阅读 · 0 评论 -
线程、进程基础知识
本文为学习小林coding《图解操作系统系列》总结,详细内容请移步原文https://blog.csdn.net/qq_34827674/article/details/107305756 进程 进程描述: 当我们编写的程序编译成可执行文件,运行后cpu就会执行我们程序中的指令,这个运行的程序就称为进程。我们的cpu不可能只运行一个程序,当我们的程序在等待资源或者其他原因暂时不能执行,那么cpu就要一直等待进程执行结束再去处理其他的工作,此时就会造成资源的浪费,所以我们可以在一个进程等...原创 2021-07-03 16:47:10 · 511 阅读 · 0 评论 -
进程间通信总结
本文内容为小林codig图解系统系列的知识点梳理,详细内容请移步原文:https://blog.csdn.net/qq_34827674/article/details/107678226 进程间通信方式包括:管道,消息,共享内存,信号量,信号和socket 管道: 每个进程的地址分配如下 所示 : 管道分为匿名管道和命名管道 匿名管道用‘|’表示,如 dmesg | grep -IE "df"。其意义为在dmesg log中查找ds字符串,管道起到将前一个命令的输出作为后一个命令的输..原创 2021-07-03 12:35:39 · 186 阅读 · 0 评论