Ty-Chen's Home

Collecting, sharing and creating knowledge


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

vim

发表于 2025-03-02   |   更新于 2025-03-02 | 分类于 编程随笔 |
字数统计: 47 | 阅读时长 ≈ 1

简介

本文记录vim的一些好用指令

阅读全文 »

Onload手册学习(二)TCP和UDP的使用

发表于 2024-11-02   |   更新于 2025-03-02 | 分类于 智能网卡 |
字数统计: 26 | 阅读时长 ≈ 1

一. 简介

本文进一步介绍onload智能网卡在TCP/UDP上的使用方法。

二. Onload和TCP

Onload手册学习(一)基本功能说明

发表于 2024-10-08   |   更新于 2024-11-02 | 分类于 智能网卡 |
字数统计: 687 | 阅读时长 ≈ 2

一. 简介

Onload本质是采用了LD_PRELOAD加载sf的网络库,取代socket(), read(), write() 原本的glibc实现,避开了网络协议栈做到了网络加速的效果,由于其易于使用、不用额外开发API,所以非常的方便好用且效果拔群。本文记录onload的使用基础知识。

阅读全文 »

linux网络编程时间戳详解

发表于 2024-04-18   |   更新于 2024-07-16 | 分类于 编程随笔 |
字数统计: 4.3k | 阅读时长 ≈ 25

一. 简介

linux的时间戳是一个复杂的系统,本文翻译linux系统内核的说明,并加以解释、附上实际实践的经验代码实例。

阅读全文 »

ptp协议分析

发表于 2024-03-22   |   更新于 2024-04-18 | 分类于 编程随笔 |
字数统计: 968 | 阅读时长 ≈ 3

一. 简介

  早在1985年,业界就提出了NTP(Network Time Protocol)(RFC1305)协议,可以将多台终端的时间同步在500us-50ms的精确度范围以内。在1992年,业界又有了SNTP(Simple Network Time Protocol)协议(RFC2030),可以将多台终端的时间同步在50-150ms的精确度范围以内。之后在2002年,终于又有了更高精度的时间同步协议:PTP(Precision Time Protocol)(IEEE 1588-2002),精度提高到了10ns-100us。后续2008年又提出了v2版本IEEE 1588-2008,进一步将精度提升到了1ns-500ns的时间范围内,这就是目前通用的纳秒级高精度时间同步协议了,也就是本文的重点分析内容。另外,在2019年,还有一篇补充文档IEEE 1588-2019 。再后续,还有针对音视频以及时延敏感网络的 IEEE 802.1AS。

阅读全文 »

Lua源码剖析(六)词法分析

发表于 2023-02-14   |   更新于 2024-03-18 | 分类于 Lua学习 |
字数统计: 4k | 阅读时长 ≈ 15

一. 简介

  前文中,我们先后介绍了Lua总体设计的思路,栈结构体及执行逻辑,基本数据结构极其实现,虚拟机的执行逻辑等,但是尚未涉及到脚本如何加载并转化为一个一个的字节码从而执行的过程。本文就此进行分析讨论。脚本语言的编译可以分为词法分析、语法分析阶段。词法分析阶段顾名思义就是将脚本加载并进行解析,分解为一个一个的基础的词并保存起来,由于后面的语法分析使用。而语法分析就是分析解释这些词的合理性及逻辑,并生成对应的字节码。这些字节码则将交给虚拟机去挨个执行,从而实现脚本的逻辑功能。

阅读全文 »

Lua源码剖析(五)虚拟机

发表于 2023-01-28   |   更新于 2023-02-13 | 分类于 Lua学习 |
字数统计: 1.7k | 阅读时长 ≈ 8

一. 简介

  脚本语言,即动态语言,其相较于静态语言如C/C++/GO等,一大区别即不需要经过计算机的预处理、编译、汇编、链接,而是由虚拟机代为完成上述过程。虚拟机模拟真实的步骤,首先将脚本语言转化为特定的opcode(各脚本语言自行定义),接着放在虚拟机中逐个执行,模拟了CPU及内存的基本功能。Lua作为一门嵌入式语言,其虚拟机附着于宿主环境中而非单独存在,其核心问题主要包括:

  • 如何分析源代码文件生成Opcode
  • 如何执行Opcode指令
  • 如何保存整个执行环境
阅读全文 »

Lua源码剖析(四)数值结构体的操作

发表于 2023-01-27   |   更新于 2023-02-07 | 分类于 Lua学习 |
字数统计: 2.4k | 阅读时长 ≈ 10

一. 前言

  前文中我们详细讲解了Lua数值结构的设计和实现思路,本文则完善配套于数值结构的各种操作处理函数。

阅读全文 »

Lua源码剖析(三)数据结构体

发表于 2023-01-19   |   更新于 2023-02-07 | 分类于 Lua学习 |
字数统计: 4.2k | 阅读时长 ≈ 16

一. 前言

  在第一讲里,我们提到了对于脚本语言来说,传值如何存储是很需要慎重考虑的事,本文就展开详细看看Lua的数值是如何存储的。

阅读全文 »

Lua源码剖析(二)核心结构体

发表于 2023-01-15   |   更新于 2023-01-29 | 分类于 Lua学习 |
字数统计: 1.7k | 阅读时长 ≈ 7

一. 前言

  无论是和静态语言交互,还是内部的API,永远少不了lua_State,这就是Lua最核心的栈结构体,也是本文的重点介绍对象。由于该结构体涉及到了众多功能,因此这里不会详细到每一个变量的作用都展开说明,而是站在脚本语言设计和开发者的角度看,设计一个栈结构体,需要哪些部分,留下一个比较系统性的框架概念即可。

阅读全文 »
12…6
Ty Chen

Ty Chen

56 日志
10 分类
88 标签
GitHub E-Mail
Friends
  • Stanleylsx
© 2020 — 2025 Ty Chen | Site words total count: 208.1k 粤ICP备20071543号
你是来访的第 位同学 访问次数: 次