Linux基础
文章平均质量分 93
Linux基础
landishu
这个作者很懒,什么都没留下…
展开
-
Linux内核的同步/互斥机制(待完善)
文章目录一、原子操作二、锁机制2.1 自旋锁2.2 读写锁2.3 RCU2.4 信号量2.5 读写信号量2.6 互斥量三、等待队列Linux是一个多用户多任务的操作系统,在多处理器(SMP)情况下,存在真正的并行运算。内核同步机制和用户空间的同步机制并不是一 一对应的,但是基本的思想都是相同的:保护临界区。只是内核同步机制更适合于在解决内核中的同步问题。一、原子操作原子操作是由编译器来保证的,保证一个线程对数据的操作不会被其他线程打断。在对称多处理器结构中,即使能在单条指令中完成的操作也有可能被打原创 2021-07-29 18:06:06 · 747 阅读 · 0 评论 -
Linux内核启动流程(待完善)
文章目录本文以Linux3.14版本源码为例分析其启动流程。各版本启动代码略有不同,但核心流程与思想万变不离其宗。内核映像被加载到内存并获得控制权之后,内核启动流程开始。通常,内核映像以压缩形式存储,并不是一个可以执行的内核。因此,内核阶段的首要工作是自解压内核映像。内核编译生成vmliunx后,通常会对其进行压缩,得到zImage(小内核,小于512KB)或bzImage(大内核,大于512KB)。在它们的头部嵌有解压缩程序。通过linux/arch/arm/boot/compressed目录下的原创 2021-07-02 14:51:45 · 3850 阅读 · 0 评论 -
Linux用户态与内核态通信的几种方式(待完善)
文章目录Linux 用户态和内核态由于 CPU 权限的限制,通信并不像想象中的使用进程间通信方式那么简单,今天这篇文章就来看看 Linux 用户态和内核态究竟有哪些通信方式。我们平常在写代码时,一般是在用户空间,通过系统调用函数来访问内核空间,这是最常用的一种用户态和内核态通信的方式。(关于 Linux 用户态和内核态可以参考 xx)除此之外,还有以下四种方式:procfs(/proc)sysctl(/proc/sys)sysfs(/sys)netlink 套接口procfs(/proc原创 2021-07-02 14:22:33 · 3124 阅读 · 4 评论 -
进程和线程
文章目录一、抽象类比:二、进程三、线程四、进程和线程的区别一、抽象类比:单CPU:一台单核处理器计算机 = 一个车间;多CPU:一台多核处理器计算机 = 一座工厂;进程:一个车间 = 一个进程; (即一个运行的程序)多进程:一座工厂可以同时运行多个车间;CPU和进程:单CPU只能同时运行单个进程,多CPU可以同时运行多个进程。线程:车间内一个工人 = 一个线程;进程与线程:一个进程可以包括多个线程。线程间内存共享:车间的空间是工人们共享的,比如许多房间是每个工人都可以进出的。一个进程的内原创 2021-06-30 17:01:37 · 129 阅读 · 0 评论 -
Linux多线程间通信和多进程间通信的方式
进程间通信的概念每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信(IPC,InterProcess Communication)进程间通信的7种方式第一类:传统的Unix通信机制管道/匿名管道(pipe)管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道。只能用于父子进程或者兄原创 2021-06-29 10:18:13 · 8993 阅读 · 2 评论 -
linux setsockopt函数
<div id="article_content" class="article_content clearfix"> <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_views-b5506197d8.css"> <div id="content_views" class.转载 2021-06-21 14:30:34 · 1959 阅读 · 0 评论 -
Linux之本地进程间Socket通信
一、Sokcet 学习路径1:http://blog.csdn.net/u010073981/article/details/50734484 学习路径2:https://www.cnblogs.com/cy568searchx/p/4211124.html 学习路径3:https...原创 2021-06-24 11:18:40 · 1562 阅读 · 0 评论