Read the C language Open source project code

Source: Internet
Author: User
Tags lua sqlite

This article address: http://www.cnblogs.com/archimedes/p/c-opensource-project.html, reprint please indicate source address.

This article mainly summarizes some C open source projects, some are very famous, some are more uncommon

1.Webbench

Webbench is a very simple web site pressure measurement tool that is used under Linux. It uses fork () to simulate multiple clients accessing the URL we set at the same time, testing the performance of the site under pressure, and simulating up to 30,000 concurrent connections to test the load capacity of the site. Webbench use C language, code is too concise, the source add up to less than 600 lines.

Download Link: http://home.tiscali.cz/~cz210552/webbench.html

2.CMockery

Cmockery is a lightweight framework that Google publishes for C unit testing. It is small, has no dependencies on other open source packages, and is less intrusive to the code being tested. Cmockery the source code line of less than 3K, you read the Will_return and mock source is at a glance.

Main Features:

    1. Free and open source, Google provides technical support;

    2. The lightweight framework makes testing faster and easier;

    3. Avoid the use of complex compiler features, the old version of the compiler, the compatibility is good;

    4. It is not mandatory to require the code to be tested to rely on the C99 standard, which is useful for the development of many embedded systems

Download Link: http://code.google.com/p/cmockery/downloads/list

3.Libev

Libev is an open source event-driven library based on the infrastructure provided by OS such as Epoll,kqueue. Known for its efficiency, it can unify IO events, timers, and signals to be processed in a single set of event-handling frameworks. Based on the reactor model, the efficiency is high, and the Code is streamlined (4.15 versions over 8,000 lines), which is a good resource for learning event-driven programming.

Download Link: http://software.schmorp.de/pkg/libev.html

4.Memcached

Memcached is a high-performance distributed memory object caching system for dynamic Web applications to mitigate database load. It provides the speed of a dynamic database-driven Web site by caching data and objects in memory to reduce the number of times the database is read. Memcached is based on a hashmap that stores key/value pairs. Memcached-1.4.7 's code volume is acceptable, only about 10K lines.

: http://memcached.org/

5.Lua

Lua is great, thesource code of LUA, 100% ANSI C, is not doped at all. It is easy to compile on any platform that supports the ANSI C compiler. The number of LUA code is small enough, 5.1.4 only 1.5W lines, minus blank lines and comments can be estimated to 1W lines. :http://www.lua.org/

6.SQLite

SQLite is an open-source, embedded relational database that implements a self-contained, 0 configuration, transactional SQL database engine. It is characterized by its high portability, ease of use, compact structure, high efficiency and reliability. Small enough, roughly 30,000 lines C code, 250K. : http://www.sqlite.org/.

7.Redis

Redis is an open source data structure server written in ANSI C. Redis code is very easy to read, the code is neat, and the code is relatively small (4.5w lines, in fact, is not very small). Most are single-threaded, with little reliance on other libraries. : redis.io/

8.Nginx

Nginx ("Engine X") is a high-performance HTTP and reverse proxy server, also a IMAP/POP3/SMTP proxy server. Nginx was developed by Igor Sysoev, the second-most visited rambler.ru site in Russia, which has been in operation for more than four years. Igor release the source code in the form of a BSD-like license. Since Nginx was released for four years, Nginx has been known for its stability, rich feature set, sample configuration files and low system resource consumption.

Nginx Excellent In addition to the program structure and code style, Nginx source organization is also concise and clear, the structure of the directory hierarchy is clear, it is worth learning.

: http://nginx.org/en/download.html.

9.UNIXV6

UNIX V6 Kernel Source code includes device drivers, including about 10,000 lines, this number of source code, the beginner is able to fully understand. There is a saying that a person can understand the code limit of 10,000 lines, UNIX V6 kernel source code in terms of the number is exactly within this range. : http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6

10.NETBSD

NetBSD is a free, highly-ported unix-like operating system that is the most current portable platform operating system and can be executed on many platforms, from 64bit Alpha servers to handheld devices and embedded devices. The slogan for the NetBSD program is: "Of course it runs NetBSD". Its simple design, code specification, and many advanced features make it highly acclaimed in the industry and academia. Due to its concise design and advanced features, it has excellent performance in both production and research, and it also has a complete source code supported by the user. Many programs can be easily obtained by NetBSD Packages collection. : http://www.netbsd.org/

11.Tinyhttpd

TINYHTTPD is an ultra-lightweight HTTP server, developed in C language with only 502 lines (including comments), with a simple client that can read this code to understand the nature of an Http server. Download Link: http://sourceforge.net/projects/tinyhttpd/

12.cJSON

Cjson is a JSON codec in the C language, very lightweight, C files only more than 500 lines, the speed is very ideal.

Cjson also has several weaknesses, although the function is not very powerful, but the Cjson small body and speed is the most commendable. Its code is very well maintained, the structure is easy to understand and can be learned as a very good C language project. Project home: http://sourceforge.net/projects/cjson/

13.minix

Minix is a UNIX-like computer operating system based on micro-kernel architecture, invented by Andrew S. Tanenbaum. Minix was originally released in 1987, opening all the source code to university teaching and research work. 2000 re-changed to BSD licensing to become free and open source software. Minix is a worldwide registered trademark. Full set of Minix in addition to the starting part of the assembly language, most of the others are purely in C language. Divided into: kernel, memory management and file management three parts.

Project home: http://www.minix3.org/

14.

Keep on updating ........ ..............

Resources

Http://my.oschina.net/zhoukuo/blog/335788#OSC_h3_2

Read the C language Open source project code

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.