/explore
|
You are here |
manybutfinite.com | ||
| | | | |
cpu.land
Curious exactly what happens when you run a program on your computer? Learn how multiprocessing works, what system calls really are, how computers manage memory with hardware interrupts, and how Linux loads executables. |
|
| | | | | ||
| | | | |
blog.lenot.re
And how to retain consistency when memory allocation failures occur? |
|
| | | | | ||
| | | | |
binarydebt.wordpress.com
In our last post we covered how x86 logical address is translated into linear address. In this one we will look at translation from linear to physical. We will use the terms 'virtual address' and 'linear address' interchangeably. A piece of hardware called paging unit is responsible for converting virtual addresses to physical. However, the... |
|
| | | | | ||
| | | | |
blog.oddbit.com
Overview I was recently working with someone else's C source and I wanted to add some basic error checking without mucking up the code with a bunch of if statements and calls to perror. I ended up implementing a simple must function that checks the return value of an expression, and exits with an error if the return value is less than 0. You use it like this: must(fd = open("textfile.txt", O_RDONLY)); Or: |
|
| | | |||