# Coursebook
[](https://github.com/cs341-illinois/coursebook/actions/workflows/deploy.yaml)
[](https://github.com/cs341-illinois/coursebook/blob/pdf_deploy/main.pdf)
[](https://github.com/cs341-illinois/coursebook/wiki)
[](http://cs341.cs.illinois.edu/coursebook/index.html)
[](https://github.com/cs341-illinois/coursebook/blob/epub_deploy/main.epub)
Welcome to the systems programming coursebook!
This repository houses a high-quality, open-source introductory systems programming textbook used by the [CS 341: System Programming](http://cs341.cs.illinois.edu/) course at the [University of Illinois Urbana-Champaign](https://illinois.edu/)
The book assumes that you have taken a programming language course and are familiar with assembly instructions.
All of the code and instruction will be in C, as it is the de-facto language of the Linux Kernel.
The Coursebook is an aim to standardize and build upon Angrave's [original wikibook experiment](https://github.com/angrave/SystemProgramming/wiki).
The most recent version of the coursebook as a single pdf is here: [main.pdf](https://github.com/cs341-illinois/coursebook/blob/pdf_deploy/main.pdf).
## Overview
### Goals
* Improve the quality and rigour of the original wikibook while maintaining openness.
* Improve the factualness by including citations, footnotes, extended reading, and a glossary.
* Have exports in the form of pdf, markdown, and html.
* Automagically build so writers can focus on writing.
## Contributing, Building, and Structure
Read `CONTRIBUTING.md`
## Credit Where Credit is Due
* Title Page Idea Inspiration - https://tex.stackexchange.com/questions/85904/showcase-of-beautiful-title-page-done-in-tex
* Duck Image Inspiration - https://pixabay.com/photos/toy-bath-rubber-duck-studio-1474138/
* Chapter Style Inspiration - https://texblog.org/2012/07/03/fancy-latex-chapter-styles/
* PDF Image Inspiration - https://pixabay.com/illustrations/pdf-miniature-file-icon-2127829/