The stack 109 In the next sections, we will talk about the stack in a bit more detail before we implement our fibers. It will be easier now that we have covered so much of the basics. The stack A stack is nothing more than a piece of contiguous memory. This is important to know. A computer only has memory, it doesn't have a special stack memory and a heap memory; it's all part of the same memory. The difference is how this memory is accessed and used. The stack supports simple push/pop instructions on a contiguous part of memory, that's what makes it fast to use. The heap memory is allocated by a memory allocator on demand and can be scattered around in different locations. We'll not go through the differences between the stack and the heap here since there are numerous articles explaining them in detail, including a chapter in The Rust Programming Language at https:// doc. rust-lang. org/stable/book/ch04-01-what-is-ownership. html#the-stack-and-the-heap. What does the stack look like? Let's start with a simplified view of the stack. A 64-bit CPU will read 8 bytes at a time. Even though the natural way for us to see a stack is a long line of u8 as shown in Figure 5. 2, the CPU will treat it more like a long line of u64 instead since it won't be able to read less than 8 bytes when it makes a load or a store. Figure 5. 3-The stack 