文件IO_复制文件描述符(附Linux-5.15.10内核源码分析

目录 1.文件描述符复制简介 2.dup函数原型 2.1 dup函数 2.2 dup函数工作原理 2.3 dup函数内核源码分析 2.4 dup函数示例代码 3.dup2函数原型 3.1 dup2函数 3.2 dup2函数工作原理 3.3 dup2函数内核源码分析 3.4 dup2函数示例代码 4.dup3函数原型 4.1 dup3函数 4.2 dup3函数工作原理 4.3 dup3函数内核源码分析 4....

CloudCompare 源码分析:点云随机采样(阅读经典)

文章目录 一、简介 二、源码分析 三、小结 参考资料 一、简介 二、源码分析 CloudCompare中的随机采样方法存储在CloudSamplingTools.cpp中,具体代码如下所示: ReferenceCloud* CloudSamplingTools::subsampleCloudRandomly(GenericIndexedCloudPersist* inputCloud, unsigne...

文件IO_文件读写(附Linux-5.15.10内核源码分析

目录 1.什么是文件偏移量? 1.1 文件偏移量介绍 1.2 文件偏移量重点 1.3 文件偏移量工作原理 2.文件偏移量设置 2.1 lseek函数 2.2 lseek内核源码分析 3.写文件 3.1 write函数 3.2 write内核源码分析 4.读文件 4.1 read函数 4.2 read内核源码分析 5.文件读写,文件偏移量设置示例代码 1.什么是文件偏移量? 1.1 文件偏移量介绍 在介绍文...

SynchronousQueue的TransferQueue源码分析

QNode的源码信息分析 一行一行的分析大概内容;下面会省略大量的CAS操作当前节点可以获取到的next节点item在生产者和消费者下有所不同。生产者是有数据。消费者为null。waiter为当前线程isData属性是用来区分消费者和生产者的属性。值得一提的是最终生产者需要将item交给消费者,最终消费者需要向生产者获取item SynchronousQueue的TransferQueue源码中核心方法...

Linux内核内存管理源码分析之init-mm.c(1)

本文参考:内核解读之内存管理(9) 第一个mm_struct_init-mm.c_奇妙之二进制的博客-CSDN博客 本文使用的内核版本为6.1.0。 init-mm.c文件只有56行,内容相对比较简单,直接贴全部代码了。mm/init-mm.c内容如下: // SPDX-License-Identifier: GPL-2.0#include <linux/mm_types.h>#include <li...

Linux内核源码分析 1:Linux内核体系架构和学习路线

好久没有动笔写文章了,这段时间经历了蛮多事情的。这段时间自己写了一两个基于不同指令集的Linux内核,x86和RISC-V。期间也去做了一些嵌入式相关的工作,研究了一下ARM指令集架构。 虽然今年九月份我就要申请了,具体申请AI方向还是机器人、嵌入式、操作系统、体系结构亦或是网络、安全、虚拟化还不知道到底要申请哪个,还没定下来,感觉比较迷茫,感觉什么都蛮喜欢的,都挺感兴趣的,都可以做,因为兴趣比较广泛,...

Tomcat处理http请求之源码分析

本文将从请求获取与包装处理、请求传递给Container、Container处理请求流程,这3部分来讲述一次http穿梭之旅。1 请求包装处理tomcat组件Connector在启动的时候会监听端口。以JIoEndpoint为例,在其Acceptor类中:protected class Acceptor extends AbstractEndpoint.Acceptor { @Override pu...

SpringBoot源码学习4——SpringBoot内嵌Tomcat启动流程源码分析

系列文章目录和关于我零丶引入我在初学spring的时候,很懵逼,因为整个项目中不存在main方法,让我有点摸不着头脑。那时候我知道有个东西叫tomcat是它监听了端口,解析了协议调到了我的servlet。在我初学SpringBoot的时候,很懵逼,有main方法了,但是tomcat在哪里呢,又是如何启动起来的?。一丶原生tomcat启动流程 在Tomcat总体架构,启动流程与处理请求流程中学习了t...

tpm2-tools源码分析之tpm2_nvdefine.c(2)

接前一篇文章:tpm2-tools源码分析之tpm2_nvdefine.c(1) 本文对tpm2_nvdefine.c中的tpm2_tool_onstart函数进行详细解析。 先再次贴出该函数源码: static bool tpm2_tool_onstart(tpm2_options **opts) { const struct option topts[] = { { "hierarchy", requ...

tpm2-tools源码分析之tpm2_nvdefine.c(1)

TPM 2.0中的tpm2_nvdefine命令对应的源文件就是tpm2_nvdefine.c,该文件位于tpm2-tools/tools/下,一共有570行(版本5.5)。 tpm2_nvdefine的功能是定义TPM非易失性(NV)索引。定义具有给定身份验证值的NV索引。 下边用几篇文章的篇幅对tpm2_nvdefine.c文件结合tpm2_nvdefine命令进行深入的、完全的解析。 先来看第一段代...
© 2024 LMLPHP 关于我们 联系我们 友情链接 耗时0.020156(s)
2024-04-19 21:00:25 1713531625