AM Software Test 9 Leave a Comment / By fawadtwopointo@gmail.com / August 23, 2025 Welcome to your AM Software Test 9 In distributed systems, the “CAP theorem” states that it is impossible to simultaneously guarantee: Concurrency, Accuracy, Performance Consistency, Availability, Partition tolerance Cache, Authentication, Privacy Control, Allocation, Processing None In compiler design, the symbol table is used for: Storing identifiers and their attributes Memory management Error recovery Parsing expressions None In database recovery, write-ahead logging (WAL) ensures: The database never crashes Logs are written to disk before data changes Data is backed up in real-time No transaction failures occur None Which of the following is a deadlock prevention technique? Resource ordering Wait-for graph Two-phase locking Banker’s algorithm None Which protocol ensures reliable communication in distributed systems? UDP ARP TCP RIP None In software project management, “earned value” is used to: Predict software defects Schedule compiler tasks Track project performance Estimate source code size None In garbage collection, the “mark-and-sweep” algorithm works by: Allocating contiguous blocks Marking reachable objects and collecting unreferenced ones Tracking variable scope Compacting memory None Which is not a feature of distributed file systems (DFS)? Scalability Replication Location transparency Centralized single point of failure None In compiler phases, semantic analysis comes after: Code generation Lexical analysis Code optimization Syntax analysis None The concept of eventual consistency is mainly applied in: Compiler design Real-time systems Distributed databases Operating systems None A distributed transaction uses a two-phase commit protocol (2PC) to ensure: Deadlock prevention Parallelism Fast queries Atomicity None The purpose of intermediate code generation in compilers is: Provide machine independence Improve performance Perform error checking Directly generate assembly None Agile software development emphasizes: Sequential processes Rigid schedules Heavy documentation Customer collaboration None Which database index is best for range queries? Hash index Inverted index B-tree index Bitmap index None In distributed computing, “latency hiding” is achieved by: Overlapping communication with computation Increasing memory size Using faster CPUs Reducing data replication None In project scheduling, a critical path is: The path with least cost The shortest task list The longest path determining minimum project duration A non-essential dependency None Which of these is not a distributed system architecture? Monolithic Multi-tier Peer-to-peer Client-server None In compiler design, a basic block is: A memory management technique A set of variables A group of statements with no branches An intermediate code representation None In project risk management, “mitigation” means: Ignoring the risk Avoiding the risk Transferring it to others Reducing the impact or likelihood None Distributed systems use vector clocks to: Allocate memory Order events causally Detect deadlocks Manage transactions None Which parsing technique is used in most modern compilers? Bottom-up LR parsing Ad-hoc parsing Top-down recursive descent Greedy parsing None In software metrics, cyclomatic complexity measures: Lines of code Compilation speed Code readability Number of independent paths in a program None In distributed databases, replication increases: Query performance always Data anomalies Availability Security None The “Halstead metrics” in software engineering measure: Visualize task schedules Program correctness Manage memory Show database schema None In distributed systems, a “heartbeat” mechanism is used for: Encryption Fault detection Synchronization Performance tuning None The main drawback of two-phase commit (2PC) is: Lack of atomicity High concurrency Blocking in case of coordinator failure No consistency None Which optimization is machine-independent? Register allocation Peephole optimization Instruction scheduling Loop invariant code motion None In agile development, a sprint retrospective is for: Writing code documentation Reviewing team process and improvements Testing performance Planning next release None Which is true about multithreading in Java? Threads can only be created using Runnable Thread class must be abstract Threads share the same memory space Threads cannot run concurrently None In project management, a Gantt chart is used to: Visualize task schedules Manage memory Estimate costs Show database schema None Time's upTime is Up!