Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

CSW20103: Chap2_Process in DS

Total questions: 51

Worksheet time: 26mins

Name
Class
Date
1.

Why is creating a thread cheaper than creating a process?

a)

Threads have separate address spaces.

b)

Threads require kernel involvement during creation.

c)

Threads share the same address space, avoiding costly setup.

d)

Threads require explicit MMU initialization.

2.

Which best describes a thread’s context compared to a process context?

a)

Thread context includes only registers.

b)

Process context includes thread context plus MMU register values.

c)

Thread context includes memory mapping information.

d)

Process context excludes kernel state.

3.

Why is thread context switching faster than process context switching?

a)

Threads do not require synchronization.

b)

Threads switch within the same process without OS intervention.

c)

Processes do not save state.

d)

Threads require kernel traps.

4.

In multithreading, which design issue most increases programming risk?

a)

Shared address space and memory access without protection.

b)

Increased thread creation time.

c)

Independent process IDs.

d)

Kernel preemption.

5.

What type of cost can context switching introduce indirectly?

a)

Increased scheduling overhead.

b)

Cache disruption and memory latency.

c)

Thread starvation.

d)

Lower priority assignment.

6.

Why is multithreading particularly useful for I/O-bound applications?

a)

It avoids the need for process scheduling.

b)

Threads can continue executing while others are blocked by I/O.

c)

It reduces CPU usage drastically.

d)

It eliminates context switching entirely.

7.

In a multiprocessing environment, what advantage do threads provide?

a)

They ensure deterministic execution order.

b)

They allow concurrent execution on multiple cores.

c)

They eliminate memory conflicts.

d)

They increase cache isolation.

8.

When does user-level threading fail to perform efficiently?

a)

When the kernel supports multiple cores.

b)

When blocking system calls cause the entire process to block.

c)

When threads have short lifespans.

d)

When context switches are minimized.

9.

In kernel-level threading, what is the main advantage?

a)

High efficiency without traps.

b)

Thread blocking doesn’t halt the entire process.

c)

No OS involvement in scheduling.

d)

Reduced complexity.

10.

In combined threading models, how does the kernel react when no runnable user threads exist?

a)

Blocks all kernel threads.

b)

Keeps kernel threads idle or removes them.

c)

Forces process termination.

d)

Recreates new threads dynamically.

11.

How does multithreading improve web client performance?

a)

Each file is fetched sequentially.

b)

Multiple threads fetch resources concurrently.

c)

Threads block until all downloads complete.

d)

Single-threaded processes handle HTTP requests.

12.

What does thread-level parallelism (TLP) measure?

a)

Fraction of blocked threads.

b)

Degree of simultaneous thread execution.

c)

Thread memory efficiency.

d)

CPU instruction throughput.

13.

A TLP value of 2.5 in a browser indicates:

a)

Purely parallel computation.

b)

Threads primarily improve logical organization, not full parallel speedup.

c)

Full utilization of all cores.

d)

Inefficient resource allocation.

14.

What benefit does multithreading bring to server-side design?

a)

Simplifies asynchronous handling through blocking I/O.

b)

Prevents race conditions.

c)

Eliminates process synchronization.

d)

Guarantees linear performance scaling.

15.

The dispatcher/worker model in a server primarily ensures:

a)

Sequential request handling.

b)

Parallelism with blocking system calls.

16.

Why is combining multithreading with blocking calls advantageous?

a)

It allows asynchronous processing with simpler structure.

b)

It requires no OS scheduling.

c)

It eliminates client-side latency.

d)

It forces event-driven programming.

17.

Why is a finite-state machine model less common in modern servers?

a)

It depends on blocking system calls.

b)

It requires complex non-blocking event management.

c)

It consumes too many threads.

d)

It cannot scale across processors.

18.

What happens if a kernel cannot distinguish individual user threads?

a)

It schedules threads efficiently.

b)

It cannot manage event-based signaling to them.

c)

It prevents context switching.

d)

It optimizes parallelism automatically.

19.

Why did mixed user-kernel thread models fail to dominate?

a)

Complexity outweighed the limited performance gain.

b)

They prevented thread preemption.

c)

They required too many system calls.

d)

They limited concurrency.

20.

In client-side distributed systems, threads are essential for:

a)

Minimizing replication.

b)

Handling multiple remote procedure calls concurrently.

c)

Enforcing synchronous communication.

d)

Reducing server caching.

21.

The main reason for virtualization is:

a)

Simplifying hardware manufacturing.

b)

Isolating components and improving portability.

c)

Increasing network latency.

d)

Sharing memory between all VMs.

22.

Which of the following is a privileged instruction?

a)

POPF in user mode.

b)

Modifying the interrupt table.

c)

Memory fetch.

d)

Arithmetic operations.

23.

Why is virtualization sometimes impossible on certain hardware?

a)

Sensitive instructions execute without causing traps.

b)

The MMU is absent.

c)

Privileged instructions cause exceptions.

d)

The CPU lacks registers.

24.

What distinguishes a behavior-sensitive instruction?

a)

It always causes a trap.

b)

Its effect depends partly on current context.

c)

It modifies only user space.

d)

It operates only in privileged mode.

25.

Which type of virtualization modifies the guest OS for better compatibility?

a)

Full virtualization

b)

Emulation

c)

Paravirtualization

d)

Hardware-assisted virtualization

26.

Why are containers more lightweight than virtual machines?

a)

They emulate hardware layers.

b)

They share the host OS kernel while isolating processes.

c)

They use full OS images.

d)

They require separate hypervisors.

27.

What do Linux namespaces provide in containers?

a)

Persistent shared memory.

b)

Unique process and resource views for each container.

c)

Hardware virtualization.

d)

Kernel recompilation.

28.

The union file system in containers allows:

a)

Each layer to perform random writes.

b)

Multiple file systems layered with writable top layer.

c)

Deletion of all lower layers automatically.

d)

Exclusive access by root processes only.

29.

PlanetLab uses virtualization to:

a)

Allow shared hardware without interference between experiments.

b)

Host containerized cloud applications.

c)

Replace kernel-level VMs.

d)

Run only homogeneous applications.

30.

What differentiates Infrastructure-as-a-Service from Software-as-a-Service?

a)

IaaS provides virtualized computing resources, while SaaS delivers software applications over the internet.

b)

IaaS delivers software applications, while SaaS provides hardware resources.

c)

IaaS is only for storage, while SaaS is only for networking.

d)

IaaS is used by end-users, while SaaS is used by IT administrators.

31.

IaaS provides physical hardware access; SaaS provides ready applications.

a)

IaaS provides physical hardware access; SaaS provides ready applications.

b)

Both provide identical services.

c)

SaaS allows kernel modification.

d)

IaaS excludes virtualization.

32.

In the X Window System, which acts as the “server”?

a)

The application process.

b)

The display engine on the user’s machine.

c)

The network layer.

d)

The kernel module.

33.

Why is the X system criticized for tight coupling?

a)

The display commands are too asynchronous.

b)

Application logic and interface are highly synchronous.

c)

It lacks security.

d)

It doesn’t support multiple users.

34.

A virtual desktop environment such as ChromeOS mainly depends on:

a)

Local computing.

b)

Browser-based cloud applications.

c)

Kernel-level GUIs.

d)

Multi-user SSH access.

35.

Which type of transparency is handled mainly by client stubs?

a)

Access and location transparency.

b)

Failure transparency only.

c)

Replication transparency.

d)

Authentication transparency.

36.

Which transparency aspect is hardest to guarantee at client side?

a)

Access transparency.

b)

Failure transparency.

c)

Location transparency.

d)

Replication transparency.

37.

The key difference between iterative and concurrent servers is:

a)

Iterative servers handle one request at a time.

b)

Concurrent servers block after each request.

c)

Iterative servers spawn multiple processes.

d)

Concurrent servers have single-thread loops.

38.

Why are concurrent servers common?

a)

They can handle blocking I/O efficiently.

b)

They reduce CPU load.

39.

In out-of-band communication, what role does TCP’s urgent message play?

a)

It duplicates requests.

b)

It allows interrupting a request within the same connection.

c)

It cancels all pending messages.

d)

It changes port assignments.

40.

Stateless servers reduce state inconsistencies because:

a)

They maintain caches persistently.

b)

They store no client session data between requests.

c)

They record session tokens.

d)

They use constant connections.

41.

A stateful server can outperform stateless ones when:

a)

Prefetching or caching client data locally.

b)

Handling purely computational tasks.

c)

Ignoring client sessions.

d)

Disabling multithreading.

42.

Which is a primary reason for migrating code to clients?

a)

Permanent installation.

b)

Avoiding preinstallation and enabling flexibility.

c)

Simplifying hardware.

d)

Reducing cache usage.

43.

Moving computation closer to data in distributed systems primarily reduces:

a)

Network traffic and latency.

b)

Memory overhead.

c)

Cache size.

d)

CPU utilization.

44.

Privacy-based code migration is essential when:

a)

The data cannot be moved legally or securely.

b)

The client system lacks CPU power.

c)

The network is reliable.

d)

The code is open source.

45.

Weak mobility means:

a)

Code and execution state are both migrated.

b)

Only code and data segments are transferred.

c)

The CPU context is preserved.

d)

Threads are frozen and restored remotely.

46.

Strong mobility allows:

a)

Relocating running code with its execution state.

b)

Reloading code from disk.

c)

Transmitting parameters only.

d)

Restarting new threads from scratch.

47.

Why is strong mobility complex in heterogeneous systems?

a)

Execution state formats differ by OS and hardware.

b)

It uses interpreted languages.

c)

It needs hypervisors.

d)

It bypasses virtual memory.

48.

What is the key advantage of abstract machines for migration?

a)

Platform independence via standardized VMs.

b)

Direct hardware access.

c)

Simplified I/O.

d)

No need for serialization.

49.

Why is container migration difficult across heterogeneous systems?

a)

Containers depend on underlying OS kernels.

b)

They contain full VM images.

c)

They use cross-platform bytecode.

d)

They run only in interpreters.

50.

In VM migration, “pushing memory pages” implies:

a)

Stopping VM immediately.

b)

Sending pages first, then modified ones.

c)

Waiting until process completion.

d)

Copying CPU registers only.

51.

What is the main limitation during VM live migration?

a)

Service unavailability for several seconds.

b)

Increased CPU speed.

c)

Cache optimization.

d)

Decreased page copying.