一些优秀的开源项目
OS
Net
Tinyhttpd(示例代码)
tinyhttpd是一个超轻量型Http Server,使用C语言开发,全部代码只有 502 行(包括注释),附带一个简单的 Client 可以通过阅读这段代码理解一个 Http Server 的本质。
tinyhttpd 是我为学校项目编写的一个相对简单的网络服务器。虽然非常简单,但 tinyhttpd 是线程化的,可以处理基本的 CGI 脚本!这是一个用于演示 http 背后概念的教育工具。
项目地址
1 |
|
Tools
CRC
libcrc
Libcrc - C 语言多平台 MIT 许可 CRC 库
https://github.com/lammertb/libcrc
cJSON
Ultralightweight JSON parser in ANSI C.
https://github.com/DaveGamble/cJSON
单元测试
Cmockery 单元测试框架
Cmockery 是一个轻量级库,用于编写 C 单元测试。google 开发。
https://github.com/google/cmockery
libev
libev是一个全功能和高性能的事件循环库,libev 参考并模仿了libevent和perl模块Event。它用于GNU虚拟专用以太网、rxvt-unicode、auditd、Deliantra MORPG服务器和客户端以及许多其他程序。node.js曾经嵌入了libev,现在更换为了libuv。
其以高效出名,它可以将 IO 事件、定时器、和信号统一起来,统一放在事件处理这一套框架下处理。
基于 Reactor 模式,效率较高,并且代码精简(4.15 版本 8000 多行),是学习事件驱动编程的很好的资源。
一些优秀的开源项目
https://www.oikiou.top/2024/9bf1668d/