Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
COMP30023: Computer Systems
Practice Mid-Semester Test
• Why are race conditions hard to debug?
Race conditions are hard to debug because they occur when multiple pro-
cesses or threads access and modify shared resources concurrently, making
the behavior unpredictable and difficult to reproduce. The timing and or-
der of these accesses can vary between executions, making it difficult to
reproduce, isolate and identify the root cause of the problem.
• Name one advantage and one disadvantage of using base and limit registers
to keep track of address space.
Advantage: simplicity since only two values need to be maintained.
Disadvantage: the entire address space of the process needs to be in mem-
ory in a consecutive block.
• What is the purpose of a system call?
A system call provides an interface between user programs and an OS and
allows user-level programs to access core OS services such as opening a
file or creating a process.
• What is the difference between symmetric and asymmetric encryption?
Symmetric encryption uses the same secret key for encryption and ecryp-
tion. Asymmetric encryption uses two cryptographic keys: a public key
for encrypting messages and a private key for decrypting ciphertexts.
• Explain why it is useful for page sizes to be a power of 2.
Page sizes being a power of 2 allows for efficient memory management
and address calculation, as binary arithmetic works most efficiently with
powers of 2. This can lead to improved performance and reduced memory
usage.