自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 linux信号机制

在 Linux 的世界里,进程就像生活在城市中的人,它们需要相互沟通来协调行动。而信号机制呢,就像是一种神奇的 “信号弹”,用于进程之间的交流。当一个进程有重要消息要传达给另一个进程时,就会发射出这样的 “信号弹”。这就是 Linux 信号机制,它是管理进程间通信的一把 “金钥匙”,让我们一起深入了解它是如何发挥作用的吧。一、概述Linux 的信号机制作为进程间通信的重要方式,发挥着关键作用。它本质上是一种软件中断,能够异步地通知进程发生了特定事件。信号的全称为软中断信号,简称软中断,在头文件<s

2024-12-12 09:40:35 494

原创 linux进程通信

通过一副图讲解进程间通信的原理,进程之间虽然有空间隔离,但都和内核连着,可以通过特殊的系统调用和内核沟通,从而达到和其它进程通信的目的。但是也不是完全没有办法,好在它们都和内核是连着的,虽然它们不能随意访问内核,但是还有系统调用这个大门,进程之间可以通过一些特殊的系统调用和内核沟通从而达到和其它进程通信的目的。那是因为内核空间是共享的,虽然N个进程都有N个用户空间,但是内核空间只有一个,虽然用户空间之间是完全隔离的,但是用户空间与内核空间并不是完全隔离的,他们之间有系统调用这个通道可以沟通。

2024-12-11 15:34:54 517

原创 getsockname函数

使用这两个函数,我们可以通过套接字描述符来获取自己的IP地址和连接对端的IP地址,如在未调用bind函数的TCP客户端程序上,可以通过调用getsockname()函数获取由内核赋予该连接的本地IP地址和本地端口号,还可以在TCP的服务器端accept成功后,通过getpeername()函数来获取当前连接的客户端的IP地址和端口号。这两个函数支持IPv4和IPv6,所以需要通过参数family来指定,当前要转换的是IPv4地址还是IPv6地址。

2024-06-18 18:19:57 425

原创 getaddrinfo函数

域名和IP地址之间转换的两个函数:gethostbyname和gethostbyaddr,但是这两个函数仅仅支持IPv4。本文再介绍一个可支持 IPv4 和 IPv6 的函数getaddrinfo,该函数可以处理名字到地址以及服务到端口这两种转换。

2024-06-18 16:35:03 213

原创 Linux clock_gettime()

CLOCK_MONOTONIC_COARSE: 系统运行时间,从系统启动时开始计时,速度更快精度更低,系统休眠时不再计时(NTP与硬件时钟有问题时会影响其频率,没有验证过)。CLOCK_MONOTONIC_RAW : 系统运行时间,从系统启动时开始计时,系统休眠时不再计时(NTP与硬件时钟有问题时不会影响其频率,没有验证过)。CLOCK_REALTIME_ALARM : 闹钟时间(应该休眠后继续计时,没验证过),系统实时时间,从Epoch计时,可被设置更改。

2024-06-18 10:28:40 775

原创 epoll用法

最后一个timeout是 epoll_wait的超时,为0的时候表示马上返回,为-1的时候表示一直等下去,直到有事件范围,为任意正整数的时候表示等这么长的时间,如果一直没有事件,则范围。当一个新的事件到来时,ET模式下当然可以从 epoll_wait调用中获取到这个事件,可是如果这次没有把这个事件对应的套接字缓冲区处理完,在这个套接字没有新的事件再次到来时,在 ET模式下是无法再次从 epoll_wait调用中获取这个事件的;在linux新的内核中,有了一种替换它的机制,就是epoll。

2024-06-18 10:23:04 685

原创 c++的坑

asdas

2023-01-28 15:00:43 106

转载 c++正则表达式

asda

2023-01-10 22:24:25 208

转载 StringPiece谷歌实现

sada

2023-01-07 03:59:02 215

转载 postgresql page页结构

qqq

2022-12-22 04:04:49 718

转载 线段树详解

https://www.cnblogs.com/xenny/p/9801703.html

2022-11-18 20:00:52 80

原创 Collecting package metadata (current_repodata.json)解决方法

Collecting package metadata (repodata.json)

2022-11-03 15:49:38 2217

原创 git设置代理

【代码】git设置代理。

2022-10-24 05:04:51 2534

原创 g++版本控制,apt安装g++11

g++

2022-10-24 05:01:49 1227

原创 解决NoWritableEnvsDirError: No writeable envs directories configured问题

sudo chmod a+w .conda

2022-10-24 04:53:21 2767 1

空空如也

空空如也

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

TA关注的人

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