tm4c_os is an operating system that is (for now) specifically written the Texas Instrument TM4C123GH6PM micro-controller. It is a combination of a desktop operating system and a small embedded operating system. The goal is to create an operating system that is guaranteed to be able to keep running even if one of the tasks accesses the wrong memory or overflows its stack.
After looking back at this work I've realized it would be far more useful as a standalone, portable lightweight kernel (smaller and more basic than FreeRTOS). Sometimes for a very small embedded project where there is no heap, a small kernel is preferred to the main loop method or a state machine. Especially one where you can customize scheduling strategies.
Writing makefiles with auto dependencies and automatically compiling new files.
gcc function attributes and options
linker scripts
assembly
how kernels work