下拉刷新
C 项目

这里是按照「分类」阅读往期的 HelloGitHub 月刊内容, 您目前在查看 HelloGitHub C 项目 集合。

Star 3.8k
Vol.107
4 个月前

防止 OOM 的 Linux 守护进程。这是一款专为 Linux 设计的 OOM 守护进程,旨在弥补内核自带的 OOM Killer 仅在内存耗尽时才触发的不足。它能够提早干预(默认 10%),自动终止占用内存最多的进程,从而防止系统因内存耗尽而陷入卡死的状态。

earlyoom
Star 6.8k
Vol.107
1 年前

SQLite 的向量搜索扩展。这是一个体积小、零依赖的向量搜索 SQLite 扩展,为 SQLite 数据库添加了插入和查询浮点、整数和二进制向量的能力。它可以运行在任何支持 SQLite 的平台上,包括 Linux、macOS、Windows、浏览器(WASM)、树莓派等。

sqlite-vec
23
sshfs
Star 7.2k
Vol.106
3 个月前

通过 SSH 挂载远程文件系统的工具。这是一个基于 SFTP 协议的文件系统工具,可通过 SSH 协议将远程文件系统挂载到本地。它操作简单,仅需一条命令,即可像访问本地文件系统一样管理远程文件和目录,兼容 Linux、BSD 和 macOS 系统。

挂载文件系统
sshfs [user@]hostname:[directory] mountpoint
卸载文件系统
fusermount -u mountpoint
Star 7.6k
Vol.105
17 小时前

高效轻量的日志收集与处理工具。这是一个轻量级、高效的日志收集、处理和转发工具,支持实时收集和处理来自不同来源的日志数据,具有低内存和 CPU 占用的特性。

fluent-bit
Star 4.3k
Vol.105
2 年前

从零用 C 语言实现哈希表。该项目是讲解如何用 C 语言实现一个开放寻址和双重哈希的哈希表,代码约为 200 行,预计学习时间为 1 到 2 小时。

26
deskhop
Star 7.4k
Vol.104
4 天前

基于树莓派的双机鼠标键盘共享方案。这是一款用于快速切换鼠标和键盘的桌面切换工具,解决了用户在多台计算机之间共享键盘和鼠标时遇到的繁琐和延迟问题。它通过硬件中介设备,支持在不同操作系统(Linux、macOS、Windows)之间通过拖动鼠标或使用快捷键实现输入的无缝切换。该项目完全开源,且不需要安装额外的驱动。硬件则是基于 Raspberry Pi Pico 和 USB 输入/输出协议,支持自定义配置并提供多种附加功能,如慢速鼠标模式、屏幕锁定和游戏模式。

deskhop
27
kyanos
Star 5k
Vol.104
17 小时前

深入内核的网络流量分析工具。这是一个基于 eBPF 的网络问题分析工具,能够实时监控和分析 HTTP、Redis 和 MySQL 请求。它支持强大的流量过滤功能,可根据进程、容器、协议信息和耗时等条件进行精确过滤,并提供多维度聚合抓取的数据包信息,适用于排查远程服务慢查询等问题。

kyanos
Star 2.6k
Vol.104
21 天前

简单易用的文件签名工具。这是一个开箱即用的文件数字签名与验证工具,只需要简单的命令即可生成和验证文件签名。它基于 Ed25519 公钥签名系统,提供可靠的文件完整性验证功能,适用于软件分发和文件共享等场景。

# 创建密钥
minisign -G
# 对文件进行签名
minisign -Sm HelloGitHub.txt
# 验证签名
$ minisign -Vm HelloGitHub.txt -P xxxx
Star 4.2k
Vol.103
1 个月前

仅用 C 语言开发 Android 应用。这是一个 Android 应用开发框架,可以让开发者不用 Java,仅用 C 和 Make 开发 Android 应用。它轻量且跨平台,支持 OpenGL ES、陀螺仪、多点触控及 Android 键盘,并能直接访问 USB 设备。

rawdrawandroid
30
taisei
Star 1.5k
Vol.103
9 天前

免费开源的东方 Project 系列的射击游戏。该项目是基于东方 Project 世界观的弹幕射击类游戏,拥有独立原创的故事情节、音乐和游戏机制。这款名为“泰西”的游戏,采用 C11、SDL2 和 OpenGL 开发,完全免费且开源,支持在 Windows、Linux、macOS 和 Chrome 等浏览器上运行。

taisei