forked from cs-education/sysassets
-
Notifications
You must be signed in to change notification settings - Fork 0
/
sys.min.json
1 lines (1 loc) · 4.05 KB
/
sys.min.json
1
{"chapters":[{"sections":[{"activities":[{"topics":"a\nb\nc\n","type":"video","file":"mp4/0010-HelloWorld-v2"},{"programCommandLineArgs":"","docFile":"chapters/chapter01/play-1-1.md","code":"int main() {return 0;}","type":"play","gccOptions":"-lm -Wall -fmax-errors=10 -Wextra"}],"name":"Hello World (System call style)"},{"activities":[{"topics":"a\nb\nc\n","type":"video","file":"mp4/0020-HelloStdErr-24fps600kbs","docFile":"chapters/chapter01/0020-HelloStdErr-Doc.md"},{"programCommandLineArgs":"","docFile":"chapters/chapter01/play-2-1.md","code":"int main() {return 0;}","type":"play","gccOptions":"-lm -Wall -fmax-errors=10 -Wextra"}],"name":"Hello Standard Error Stream"},{"activities":[{"topics":"a\nb\nc\n","type":"video","file":"mp4/0030-OpenCreateAFile-650kb"},{"programCommandLineArgs":"","docFile":"chapters/chapter01/play-3-1.md","code":"int main() {return 0;}","type":"play","gccOptions":"-lm -Wall -fmax-errors=10 -Wextra"},{"programCommandLineArgs":"","docFile":"chapters/chapter01/play-3-2.md","code":"int main() {return 0;}","type":"play","gccOptions":"-lm -Wall -fmax-errors=10 -Wextra"}],"name":"Writing to files"},{"activities":[{"topics":"a\nb\nc\n","type":"video","file":"mp4/0040-OpenErrorsPrintf-600kbs"},{"programCommandLineArgs":"","docFile":"chapters/chapter01/play-4-1.md","code":"int main() {return 0;}","type":"play","gccOptions":"-lm -Wall -fmax-errors=10 -Wextra"}],"name":"Not everything is a system call"}],"name":"Chapter 1","description":"In which our intrepid hero battles standard out, standard error, file descriptors and writing to files."},{"sections":[{"activities":[{"type":"video","file":"mp4/0050-NotAllBytesAre8Bits"},{"type":"play","docFile":"chapters/chapter02/play-1-1.md"}],"name":"Not all bytes are 8 bits?"},{"activities":[{"type":"video","file":"mp4/0060-FollowTheIntPointer"},{"type":"play","docFile":"chapters/chapter02/play-2-1.md"}],"name":"Follow the int pointer"},{"activities":[{"type":"video","file":"mp4/0070-CharacterPointers"},{"type":"play","docFile":"chapters/chapter02/play-3-1.md"}],"name":"sizeof character arrays, incrementing pointers"}],"name":"Chapter 2","description":"Sizing up C types and their limits, int, char arrays and incrementing pointers."},{"sections":[{"activities":[{"type":"video","file":"mp4/0080-ProgramArguments"}],"name":"Program arguments argc argv"},{"activities":[{"type":"video","file":"mp4/0090-Environment"}],"name":"Environment Variables"},{"activities":[{"type":"video","file":"mp4/0100-CharArraySearching"}],"name":"String searching (Strings are just char arrays)"},{"activities":[{"type":"video","file":"mp4/0110-PointersToAutomaticVariables-v2"}],"name":"Lifetime of automatic variables"}],"name":"Chapter 3","description":"Program arguments, environment variables, working with character arrays (strings)"},{"sections":[{"activities":[{"type":"video","file":"mp4/0120-TimeForMallocingHeapMemory"}],"name":"Malloc, heap and time"},{"activities":[{"type":"video","file":"mp4/0130-HeapGotchas-DanglingPointersAndDoubleFree"}],"name":"Heap allocation Gotchas"},{"activities":[{"type":"video","file":"mp4/0140-StructTypedefLinkedList"}],"name":"struct, typedefs and a linked list"},{"activities":[{"type":"video","file":"mp4/0150-CreatingLinksStrdup"}],"name":"Duplicating strings, memory allocation and deallocation of structures"}],"name":"Chapter 4","description":"Heap and stack memory. Working with structs."},{"sections":[{"activities":[{"type":"video","file":"mp4/0160-getputchar-gets-puts-v2"}],"name":"Reading characters, Trouble with gets"},{"activities":[{"type":"video","file":"mp4/0170-scanf-intro"}],"name":"Introducing sscanf and friends"},{"activities":[{"type":"video","file":"mp4/0180-getline"}],"name":"getline is useful"}],"name":"Chapter 5","description":"Text input and output and parsing using getchar, gets, getline"},{"sections":[{"activities":[{"type":"video","file":"mp4/0190-SIGINT-SIGALRM"}],"name":"Introducing signals and forks"},{"activities":[{"type":"video","file":"mp4/0200-forkwaitpid-forkbomb"}],"name":"Introducing fork and waitpid"}],"name":"Chapter 6","description":"Introducing signals and process forking"}]}