Fundamentals of IA-32 programming and Operating System Concepts