LuaJIT计算相关代码性能指引 发表于 2021-05-16 | 更新于 2021-09-15 | 分类于 Lua学习 | 字数统计: 657 | 阅读时长 ≈ 2 一. 前言 本文为luajit作者所写文章Numerical Computing Performance Guide的译文,属于个人记录。 阅读全文 »
函数返回值的坑 发表于 2021-01-17 | 更新于 2021-01-26 | 分类于 编程随笔 | 字数统计: 2.4k | 阅读时长 ≈ 12 一. 简介 最近有同学问为什么函数返回值选择返回对象指针而不是对象,所以就此展开来深入分析一下。 阅读全文 »
不一样的hello world 发表于 2021-01-08 | 更新于 2021-01-15 | 分类于 编程随笔 | 字数统计: 960 | 阅读时长 ≈ 3 一. 简介 最近学习了一些C内联汇编的知识,简单的尝试了一下,发现里面有很多有趣的东西,分享如下。首先说明,本文的内联使用仅为一个小例子,并不规范,另外32位和64位有着较大区别,本文基于64位Ubuntu16.04环境编译。 阅读全文 »
Linux操作系统学习笔记(番外篇二)解密虚拟内存0x400000以下的地方 发表于 2020-12-19 | 更新于 2020-12-19 | 分类于 Linux操作系统内核学习 | 字数统计: 777 | 阅读时长 ≈ 2 一. 前言 最近看CSAPP时,对以前没有仔细注意的一处知识盲区产生了兴趣,所以进行了深入研究,并写下此文一记录。 阅读全文 »
Linux操作系统学习笔记(三十一)Docker 发表于 2020-12-07 | 更新于 2021-01-14 | 分类于 Linux操作系统内核学习 | 字数统计: 1.2k | 阅读时长 ≈ 5 一. 简介 本文介绍Docker容器实现的三大技能:namespace, cgroup和rootfs,以此希望能从本质上剖析容器,并理解其工作机制和工作中可能会遇到的问题。 阅读全文 »
Linux操作系统学习笔记(番外篇)QEMU 发表于 2020-12-07 | 更新于 2021-01-01 | 分类于 Linux操作系统内核学习 | 字数统计: 1.2k | 阅读时长 ≈ 6 一. 简介 突然发现前文忘了写如何编译运行Linux内核并进行修改、调试,所以这里临时补上。主要使用QEMU搭建虚拟机,并在其基础上下载内核并编译从而实现内核调试。 阅读全文 »
Linux操作系统学习笔记(三十)docker和k8s的恩怨情仇 发表于 2020-12-05 | 更新于 2020-12-07 | 分类于 Linux操作系统内核学习 | 字数统计: 3.6k | 阅读时长 ≈ 12 一. 简介 之前聊天发现很多小伙伴对docker和k8s了解甚少,所以决定分享一下在docker和k8s背后这些年容器发展的故事,谈不上以史为鉴,但是至少可以从中汲取经验教训,同时也能了解容器及容器编排发展的来龙去脉。 阅读全文 »
volatile硬核剖析 发表于 2020-11-23 | 更新于 2021-01-08 | 分类于 编程随笔 | 字数统计: 1.3k | 阅读时长 ≈ 5 一. 前言 volatile在JAVA和C/C++中均有使用,而含义不同。不论是前者还是后者,在网上都流传着诸多误解,为此我们抛开一切中文资料,从JAVA、C/C++的文档手册、开发者的博客、stack overflow的高赞问题回复等源头去着手了解,并结合实际代码测试来验证其说法的可靠性。 阅读全文 »
Linux操作系统学习笔记(二十九)深入理解存储器 发表于 2020-11-15 | 更新于 2020-12-03 | 分类于 Linux操作系统内核学习 | 字数统计: 4.9k | 阅读时长 ≈ 17 一. 前言 本文延续上文介绍CPU的基本思路,继续探索计算机的存储器,包括寄存器、CPU缓存、内存和硬盘,在深入了解存储器的基础上,我们可以写出性能更为优异的代码。 阅读全文 »
Linux操作系统学习笔记(二十八)深入理解CPU 发表于 2020-10-30 | 更新于 2020-12-15 | 分类于 Linux操作系统内核学习 | 字数统计: 12.8k | 阅读时长 ≈ 45 一. 前言 在前面一些文章中多多少少有提到一些CPU的结构以及对应的寄存器等,但是总觉得不够透彻,所以单开一文详细叙述CPU的各种知识,从而加深对操作系统和性能的理解。本文从最基本的加法器和乘法器切入,随后介绍CPU的基本架构和实现原理,接着介绍各个核心模块的实现细节,最后介绍CPU的一些高级黑科技。 阅读全文 »