自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 linux内核同步机制实现

linux内核同步机制实现个人公众号:linux进击之路​锁是多CPU运行时保证功能正常必备的同步机制,本文先总结内核常用锁的实现原理,然后借鉴内核实现,开发用户态直接操作的锁同步机制。自旋锁实现机制自旋锁不会导致进程睡眠和调度,因此对于不可打断的场景,如中断上下文中,通常会使用自旋锁来保护数据。老版内核的自旋锁维护一个计数值count并初始为1,第一个进程加持锁时,使用CAS原子操作更新count值,CAS语义实现如下:intCAS(int*ptr,intold...

2021-05-07 21:08:06 180

原创 网络协议栈收发包

个人公众号:linux进击之路​网络协议栈即OSI通信模型在linux内核的描述,又叫网络子系统。网络协议栈是实现客户端和服务端通信的基础。本文内容基于2.6.9版本,主要从报文收发的流程上一步步讲解应用层套接字发送的数据是如何发送给对端,以及如何从套接字上读取到数据的。我们淡化OSI模型中的物理层以及应用层的处理流程,主要展开说明数据链路层到传输层的逻辑,如下图所示。一、数据链路层接收处理报文数据通过物理链路传输到网卡时,会存到网卡的内存空间内(每个网卡在内核中都对应一个网络设备.

2021-04-26 23:31:45 616

空空如也

空空如也

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

TA关注的人

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