Call stacks are used to store the return addresses when a subroutine is called, as well as to hold the parameters passed to the subroutine and the local variables of the subroutine. They are also used for storing temporary results in recursive functions. Call stacks are typically managed by the operating system, but can also be implemented in user space code.
Brown University
Spring 2023
Introductory course covering computer system fundamentals including machine organization, systems programming in C/C++, operating systems concepts, isolation, security, virtualization, concurrency, and distributed systems. Projects involve implementing core OS functionality.
No concepts data
+ 32 more conceptsUC Berkeley
Summer 2022
This course offers an introduction to computer security, including cryptography, operating system security, network security, and software security. It uses case studies from real-world systems. Prerequisites include experience working with large codebases and a basic understanding of modular arithmetic/set notation.
No concepts data
+ 40 more conceptsWellesley College
Spring 2023
This course explores the inner workings of computers, focusing on how they execute programs. Students gain an in-depth understanding of software and hardware abstractions, ranging from programming languages to transistors. Key areas covered include computational building blocks, hardware-software interfaces, data representation, and practical system abstractions. The course also emphasizes structured reasoning about program execution and promotes skills for independent learning, critical thinking, and problem-solving in computer science.
No concepts data
+ 25 more concepts