![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 95
Faiz..
分享学到的C/C++知识
展开
-
网络基础篇:网络模型
当我们考虑进程间通信时,我们实际上是在考虑如何在不同的实体(进程)之间交换信息。然而,当这些实体跨越不同的设备或系统时,我们就需要引入更高级别的通信机制,即。是一种允许设备(如计算机、服务器、移动设备等)通过某种形式的连接(如电线、光纤、无线电波等)进行通信的系统。要解决上述问题,网络结构分层是计算机网络设计中的一个重要概念,它将复杂的网络通信过程划分为若干个独立的、相对简单的层次,每个层次都有其特定的功能和协议。这样做的目的是为了简化网络设计和实现,提高网络的可维护性和可扩展性。原创 2024-06-20 11:11:43 · 687 阅读 · 1 评论 -
Linux线程(五)线程池的模拟实现
线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建的线程集合(线程池)中分配这些任务进行执行。线程池的主要目的是重用线程,减少线程创建和销毁的开销,提高系统效率,并简化并发编程的复杂度。线程池不仅能够保证内核的充分利用,还能防止过分调度。可用线程数量应该取决于可用的并发处理器、处理器内核、内存、网络sockets等的数量。原创 2024-05-19 21:37:24 · 1030 阅读 · 4 评论 -
Linux线程(四) 生产者消费者模型
生产者和消费者彼此之间不直接通讯,而通过阻塞队列来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给阻塞队列,消费者不找生产者要数据,而是直接从阻塞队列里取,阻塞队列就相当于一个缓冲区,平衡了生产者和消费者的处理能力。这个阻塞队列就是用来给生产者和消费者解耦的。原创 2024-05-14 19:35:21 · 1031 阅读 · 2 评论 -
Linux线程(三)死锁与线程同步
在Linux环境下,条件变量是线程同步的一种机制,用于实现线程间的协作,使得一个线程能够等待某个条件变为真,而另一个线程负责改变这个条件并通知等待的线程。条件变量通常与互斥锁一起使用,以确保在检查条件和修改条件时的原子性和一致性。原创 2024-05-13 13:00:30 · 823 阅读 · 2 评论 -
Linux线程(二)线程互斥
在Linux系统中,线程互斥是一种确保多个线程在访问共享资源时不会产生冲突的机制。这是通过使用互斥锁(Mutex)来实现的,它是防止并发执行线程同时进入临界区(即访问共享资源的代码段)的一种同步原语。原创 2024-05-11 22:57:45 · 630 阅读 · 4 评论 -
Linux线程(一)初识线程
在Linux中,线程(thread)是一种轻量级进程(Light-weight Process, LWP)的概念,它是进程内部的一个执行流,代表了程序中的一个独立执行路径。原创 2024-05-09 23:22:19 · 1312 阅读 · 0 评论 -
Linux:进程通信(三)信号的捕捉
Linux信号的捕捉流程涉及几个关键步骤,主要通过使用signal或更推荐的sigaction系统调用来实现。原创 2024-05-09 12:07:00 · 1116 阅读 · 0 评论 -
Linux:进程通信(二)信号的保存
上篇文章我们讲解了信号的产生:Linux:进程信号(一)信号的产生接下来我们来看一下信号的保存信号的处理是否立即进行,取决于信号的类型、进程的当前状态,以及进程对信号的处理策略。原创 2024-05-07 11:31:12 · 1046 阅读 · 4 评论 -
Linux:进程信号(一)信号的产生
信号是一种进程间通信机制,用于通知进程发生了特定事件。这些事件可以是来自内核的通知(例如,进程已经终止)或者其他进程发送的信号。信号可以被用来实现进程之间的同步、中断处理、错误处理等。原创 2024-05-06 18:32:28 · 988 阅读 · 4 评论 -
Linux开发工具的使用 (gcc/g++ | gdb)
Linux是一个广泛用于开发的操作系统,提供了许多强大的工具和环境来支持开发者.原创 2024-02-09 16:50:17 · 894 阅读 · 1 评论 -
Linux:vim编辑器的使用
Vim 是一款在 Linux 系统上广泛使用的文本编辑器,它具有强大的功能和高度的定制性。本文介绍基本使用和个性化定制原创 2023-11-10 23:06:42 · 60 阅读 · 0 评论 -
Linux下的常用基本指令
以下指令是Linux系统中最基本、最常用的命令,可以满足日常的文件管理、系统监控和文本处理等需求。原创 2023-11-10 20:18:22 · 45 阅读 · 1 评论 -
Linux项目自动化构建工具:make/Makefile
在Linux项目中,make和Makefile是常用的自动化构建工具和构建脚本语言,用于管理项目的编译、链接和打包等过程。原创 2023-11-09 22:59:15 · 234 阅读 · 6 评论 -
Linux权限管理
Linux下有两种用户:超级用户(root)、普通用户。超级用户:可以再linux系统下做任何事情,不受限制普通用户:在linux下做有限的事情。超级用户的命令提示符是“#”,普通用户的命令提示符是“$“。命令su [用户名功能:切换用户。例如,要从root用户切换到普通用户user,则使用su user。要从普通用户user切换到root用户则使用surootroot可以省略),此时系统会提示输入root用户的口令。原创 2023-10-24 22:49:54 · 59 阅读 · 1 评论