foundational principles of computer operating systems 1505694