I'm doing Lab #2 right now, which is where you write your first RTOS scheduler and make the whole time-slicing scheduled thread concept work for the first time... and I just want to add, this is a ton of fun!!!
Class is taking more time to go through than I thought it would, mostly the lectures, but I'm making time for it here and there. There are 6 sections to the class and only 1-5 are up right now, #6 I think is the actual communication with the CC2650 Bluetooth Low Energy coprocessor (where you use either the TI CC2650 BoosterPack or the CC2650 LaunchPad in boosterpack mode). The bulk of the code being run here is already written by the professors in the "BSP" library, e.g. for communicating with the LCD and drawing lines/text, reading the temperature sensor, accelerometer, etc. Your job is just to learn the specific core facilities that an RTOS provides.
The "magic" of an RTOS and simulating multiple threads on a single CPU wasn't as complicated as I thought, and while the particulars of this course only teach ARM's specific way of context switching I generally understand the analysis required to implement this on another chip:
1. Understand exactly which registers get pushed onto the stack when an interrupt occurs and in which order
2. Push the remaining registers
3. Know exactly how to exit an ISR correctly - the actual context "switch" relies on this