1. Memory Management
Prerequisite: 101
Mentor |
|
Course Materials |
|
IRC |
irc.gimp.net #gnome-university |
This course will cover the basics of dynamically allocating and releasing memory as it is needed by a program. The student will learn the difference between the stack and the heap, pointers, memory ownership, allocation, and reclamation.
Students will work through the following chapters and perform the exercises. Questions may be asked of the mentor as well as the community on IRC.
1.1. Topics
These need to be organized into chapters.
- malloc, calloc, alloca, free (possibly using g_ variants?)
- What is a heap?
- What is a stack?
- Who's responsibility is it to free?
- Basic reference counting of structures.
I think for the student project we will go through and build a boxed type (in gobject parlance) for delivering messages to a post box.
1.2. Chapter 1
1.3. Chapter 2
1.4. Chapter 3
1.5. Chapter 4
1.6. Chapter 5
1.7. Chapter 6
1.8. Chapter 7
1.9. Chapter 8
1.10. Chapter 9