自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(169)
  • 收藏
  • 关注

原创 【数据结构】并查集

聊聊并查集

2024-12-30 16:20:03 1304

原创 【数据结构】计数排序的原理及实现

详谈计数排序的原理及代码实现

2024-12-11 11:52:28 700

原创 【数据结构】基数排序的原理及实现

详谈基数排序的原理及实现

2024-12-10 13:34:02 974

原创 【计算机网络】socket编程 --- 实现简易TCP网络程序

这里我们规定将TCP服务器封装成一个类,以下是服务器程序框架int main()// 1. 创建TCP服务器端对象// 2. 初始化TCP服务器// 3. 启动TCP服务器return 0;log lg;public:{}{}{}void Run(){}private:lg是我往期封装的日志类对象,这个在UDP也使用过。👉【计算机网络】socket网络编程 — 实现一些简易UDP网络程序👉【Linux】模拟实现一个简单的日志系统。

2024-09-03 17:58:54 1541 1

原创 【计算机网络】socket网络编程 --- 实现一些简易UDP网络程序

在上篇博客中,我们简单认识了socket套接字的相关API等其它内容。这篇博客我将带领大家如何使用socket套接字,来从零实现一个简单的UDP网络程序 — 字符串回响。即接收到的数据内容要原样返回给客户端。里面会掺杂点格外知识,希望大家耐心看完 ~

2024-08-25 18:38:03 1345

原创 【计算机网络】认识端口号 && 认识传输层协议 && 认识网络字节序 && 认识socket套接字

认识端口号 && 认识传输层协议 && 认识网络字节序 && 认识socket套接字

2024-08-22 19:58:52 1391

原创 【计算机网络】网络基础

构建网络编程框架

2024-08-21 18:19:25 2769 5

原创 【Linux】线程安全的单例模式 && STL和智能指针的线程安全问题 && 其他常见的各种锁 && 读者写者模型(线程的周边话题)

Linux线程的最后一篇博客,what can i say, 线程 out !!!

2024-08-16 16:13:25 1336

原创 【Linux】线程池

池化技术之线程池

2024-08-14 17:00:27 845

原创 【Linux】生产者消费者模型

生产者消费者模式(也称PC模型):就是通过一个容器来解决生产者和消费者的强耦合问题。是专门高效的解决多线程或多进程间协作问题。强耦合指的是系统中各个组件或模块之间依赖关系非常紧密和直接,一个组件的改变可能会直接影响到其他组件,导致系统难以维护和扩展。因此,生产者和消费者彼此之间可以不用直接通讯,而通过容器来进行通讯。所以生产者生产完数据之后不用等待消费者处理,直接扔给容器,消费者不找生产要数据,而是直接从容器里取。这个容器本质就是一个缓冲区,平衡了生产者和消费者的处理能力。

2024-08-12 16:06:37 1082

原创 【Linux】线程同步

本篇博客讲述了同步的相关概念,以及介绍了Linux下条件变量的相关接口

2024-08-10 15:34:06 1019

原创 【Linux】线程互斥

线程互斥有关的所有内容都在这了~

2024-08-05 22:45:42 861

原创 【Linux】深入理解线程

本篇博客讲解了:pthread_t对象是什么、线程的独立栈、线程局部存储。

2024-08-03 14:02:57 1269

原创 【Linux】线程控制

介绍了Linux下线程相关接口

2024-07-31 22:46:58 754

原创 【Linux】初识线程

开启线程篇章~

2024-07-30 17:52:05 1008

原创 【Linux】信号处理 --- 可重入函数、volatile、SIGCHLD信号(补充篇)

了解什么是可重入函数、volatile关键字和SIGCHLD信号

2024-07-24 00:18:01 1100

原创 【Linux】进程信号 --- 信号处理

信号处理,图文并茂

2024-07-22 23:50:33 1746

原创 【Linux】进程信号 --- 信号保存

进程信号之信号保存

2024-07-19 19:25:50 1065

原创 【Linux】进程信号 --- 信号产生

万字讲解信号产生

2024-07-16 22:20:31 985

原创 【Linux】进程信号 --- 信号预备阶段(入门篇)

【Linux】进程信号 --- 信号预备阶段(入门篇)

2024-07-15 16:47:52 1089

原创 【Linux】System V消息队列 System V信号量

在System V通信标准中,还有一种通信方式:消息队列,以及一种实现互斥的工具:信号量;随着时代的发展,这些陈旧的标准都已经较少使用了,但作为IPC中的经典知识,我们可以对其做一个简单了解。尤其是 信号量,可以通过它,为以后多线程学习中POSIX信号量的学习做铺垫信号量本质是计数器,PV操作具有原子性。执行流申请资源,必须先申请信号量(计数器)资源,得到信号量之后,才能访问临界资源!信号量值10两态的。二元信号量,就是互斥功能。申请计数器(信号量)的本质,是对临界资源的预定机制!

2024-07-13 19:52:02 939 1

原创 【Linux】进程间通信之System V共享内存

原理 + 代码 + 万字讲解共享内存

2024-07-11 17:18:06 849 6

原创 【Linux】模拟实现一个简单的日志系统

日志系统

2024-06-12 20:08:19 1090 3

原创 【Linux】进程间通信之命名管道

管道家族之命名管道

2024-06-11 00:57:19 986 4

原创 【Linux】匿名管道的应用场景 --- 进程池

匿名管道实战 --- 进程池

2024-06-10 01:27:02 1119 2

原创 【Linux】进程间通信之匿名管道

进程间通信IPC)就是两个或多个进程实现数据层面的交互。在Linux中,管道可以被视为一种特殊类型的文件,它是基于文件级别的通信方式。它使得一个进程的输出可以直接成为另一个进程的输入,从而实现了进程之间的数据传输和协作。在Linux中,你可以使用管道符号将一个进程的输出发送到另一个进程的输入。比方说你想要统计一个文件中包含的单词数量。其中,当cat命令和wc命令运行起来后就是两个进程,cat进程通过标准输出将数据传输到管道当中,wc进程再通过标准输入从管道当中读取数据,至此便完成了两个进程间通信。

2024-06-08 22:44:08 1293

原创 手把手教你在VSCODE下写C/C++代码(内附如何连接远端服务器教程)

最详细的vscode配置

2024-06-04 23:52:02 3349 2

原创 【Linux】动态库和静态库

我们平时写的C程序,一上来就写上,然后就可以使用诸如printfscanf等函数,可在stdio.h中只包含函数的声明而不包括函数的定义(实现),那么函数的定义在哪里呢?答案是在库文件中。库是一组已经编写好的代码或程序模块,通常包含了函数的实现,使用库可以帮助程序员节省时间和精力,使得程序员不需要花费精力造轮子,提高了代码的可维护性和可重用性。而库又分为动态库和静态库动态库(共享库):在程序运行时通过加载器被加载到物理内存中,使得多个程序可以同时共享同一份库的实例。。在Linux中,.so。

2024-06-04 09:55:52 1216 1

原创 【Linux】文件系统和软硬链接

前面我们学习文件相关的知识,如文件操作等,文件都是被进程打开(内存文件),根据冯诺依曼体系结构,被打开的文件一定会被加载到内存,由操作系统管理。Linux学习目录但并不是所有的文件都会被进程打开,那么没有打开的文件就只能在磁盘上呆着(磁盘文件)。当然了,没有打开的文件也应当进行管理,我们把做这部分管理工作称之为文件系统。文件系统属于操作系统中的一部分,通常通过磁盘或其他存储介质来管理文件(路径问题,存储问题,获取问题内容+属性,删除修改等效率问题)。因此,在学习文件系统之前,我们首先需要认识磁盘。

2024-05-30 17:40:09 1054 2

原创 【Linux】简单模拟C语言文件标准库FILE

在C语言中,FILE结构体一定封装了诸如文件描述符等字段,使得C语言文件操作的库函数可以很好的调用系统调用,因此程序员可以更加方便地使用高级接口来完成任务,而无需深入了解底层系统调用的实现细节。而这篇博客将带领大家深刻理解C语言文件操作函数底层是如何封装系统调用接口,以及C语言用户级缓冲区的现象。注:本篇博客不是为了造一个更好的轮子,而是重在理解!!!

2024-05-21 23:28:06 901

原创 【Linux】用户级缓冲区

用户级缓存区

2024-05-17 22:49:44 768

原创 【LInux】<基础IO> 文件操作 | 文件描述符 | 重定向

到目前为止,我们所知道的文件描述符就是open函数的返回值(非负整数),这个描述符可以在后续的读写操作中用作文件标识符,即找到对应的文件。那不知道大家有没有思考过一个问题:为什么操作系统可以单单通过一个整数(文件描述符)就能找到对应的文件?文件分为打开的文件和没打开的文件(这里先讨论打开的文件,等到文件系统再谈没打开的文件)。打开的文件是由进程使用函数(如fopen())打开的。根据冯诺依曼体系结构,被打开的文件一定会被加载到内存。而一个进程可以打开多个文件(1:n。

2024-05-15 19:48:29 1141 1

原创 【Linux】模拟实现bash(简易版)

手把手教你实现一个简单的命令行解释器bash

2024-05-10 19:07:50 1345

原创 【Linux】进程控制 之 进程创建 && 进程终止 && 进程等待 && 进程替换

本篇博客讲解了进程控制 之 进程创建 && 进程终止 && 进程等待 && 进程替换。码字结合,快来看看吧 ~

2024-05-05 11:16:11 853

原创 【Linux】进程地址空间

详谈进程地址空间

2024-04-30 14:11:38 1177

原创 【Linux】环境变量

掌握要求:常见的环境变量有哪些和干什么的、环境变量的特点、如何获取环境变量、命令行参数是干嘛的

2024-04-25 19:22:35 1143 1

原创 【Linux】进程优先级

主要内容:什么是进程优先级、为什么有进程优先级以及如何修改进程优先级

2024-04-23 20:11:29 1538

原创 【Linux】LInux下的进程状态

重点介绍:僵尸进程和孤儿进程

2024-04-23 09:57:35 1962

原创 【LInux】进程管理

本文将深入探讨进程管理的各个方面,从基本概念到实际应用,帮助读者全面了解进程在操作系统中的重要性以及管理机制。

2024-04-21 14:01:15 1107

原创 【Linux】软件包管理器yum

在Linux下安装软件,一个通常的办法是下载到程序的源代码,并进行编译,得到可执行程序。但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好,做成软件包(可以理解成windows上的安装程序)放在一个服务器上,通过软件包管理器可以很方便的获取到这个编译好的软件包,直接进行安装。软件包和软件包管理器,就好比 “App” 和 “应用商店” 这样的关系。在Linux中,yum是Linux下非常常用的一种软件包管理器。主要应用在Centos等Linux发行版上。

2024-04-14 14:28:31 1080 2

在线浏览vector源码

在线浏览vector源码

2023-08-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除