LU3 Distributed Operating System Flashcards

1
Q

What is the main goal of a Distributed Operating System (DOS)?

A

Hide and manage hardware resources (making a cluster appear as a single machine).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What hardware configuration is typically associated with a DOS?

A

Multi-processors and homogeneous multi-computers (tightly coupled).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Give an example of a Distributed Operating System mentioned in the slides.

A

Amoeba, LOCUS, Plan 9.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the main goal of a Network Operating System (NOS)?

A

Offer local services to remote clients (file sharing, print services).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What type of multi-computers does a NOS typically manage?

A

Heterogeneous multi-computers (LAN and WAN) - loosely coupled.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Name an example of Network Operating System from the lecture slides.

A

Novel NetWare, Windows Server, Unix/Linux, macOS Server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What functionality does Middleware add to a NOS?

A

Implements general-purpose services (distribution transparency).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Provide an example of middleware technology.

A

MQTT (Message Queuing Telemetry Transport), Apache Thrift, Java RMI, CORBA.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the primary goal of middleware?

A

Provide distribution transparency (hiding the distributed nature of the system).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What type of system is NOT fully considered a Distributed System between DOS

A

NOS and Middleware?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What’s the key difference between DOS and NOS in terms of resource management?

A

DOS manages resources centrally, while NOS manages resources on each individual node.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the difference between ‘Homogeneous Multicomputer Systems’ and ‘Heterogeneous Multicomputer Systems’”

A

Homogeneous systems utilize identical processing elements, or cores, with the same Instruction Set Architecture (ISA) while Heterogeneous do not.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is a microkernel?

A

The near-minimum amount of software that can provide the mechanisms needed to implement an operating system (OS).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What essential mechanisms are provided by a microkernel?

A

Low-level address space management, thread management, and inter-process communication (IPC).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

In a microkernel-based OS

A

how are applications separated from OS code?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is the advantage of a microkernel-based system?

A

Increased modularity and potential for improved security due to separation of concerns.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Why are shared memory configurations valuable?

A

They allow fast communication and data sharing between processors.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What are the advantages of using a shared memory architecture?

A

Reduced latency and simplified programming model for some applications.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is a disadvantage of shared memory systems?

A

Scalability can be limited due to memory contention and coherence overhead.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is private memory architecture?

A

Each processor has its own dedicated memory (requiring message passing for communication).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What are some interconnection networks for multiprocessors?

A

Bus-based, Crossbar switch, Omega switching network.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What are the main layers in a Multicomputer Operating System?

A

Kernel, Distributed Operating System Services, Distributed applications.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

In Multicomputer operating system what is the lowest layer?

A

Kernel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

In Multicomputer operating system what is the highest layer?

A

Distributed applications

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
What is False Sharing in Distributed Shared Memory Systems?
Occurs when multiple processes access different data items on the same cache line, leading to unnecessary cache invalidations.
26
What is the main goal of Distributed Shared Memory (DSM) systems?
To provide a shared memory abstraction on top of a distributed memory system.
27
What are the key components in a Network Operating System architecture?
Kernel, Network OS Services, Distributed applications.
28
How does a Network Operating System enable resource sharing?
By providing network services that allow clients to access resources on remote servers.
29
Explain how clients might mount servers differently in a Network Operating System.
Each client might have a different view of the network file system hierarchy, mounting servers at different locations.
30
Describe the role of Middleware in a distributed system.
Middleware sits between the OS and applications, providing general-purpose services and hiding the complexity of the distributed environment.
31
How does middleware contribute to distribution transparency?
By providing a consistent interface to applications, regardless of the location of resources or services.
32
What does it mean if middleware layer in an open system implements the same interfaces?
It promotes interoperability because the protocols used are the same by each middleware layer as well as the interface offered to applications.
33
What is the key benefit of having common protocols in a middleware layer?
It allows different middleware implementations to interoperate seamlessly.
34
Why is it important for middleware to provide a consistent programming interface?
To simplify application development and reduce the dependencies on specific underlying technologies.
35
What resources do OSes manage in a distributed environment
to support middleware?
36
Why does a uniprocessor OS use a module configuration (User application
Memory module
37
What kind of memory is shared in multiprocessing systems?
Shared memory
38
In a multiprocessing system what is the role of Cache?
High speed storage for frequently access data, reducing the average time to access memory.
39
In the Homogeneous multicomputer systems
what is ISA?"Instruction Set Architecture"
40
What is another term that the operating system layer is referred to as?
OS
41
What are examples of OS roles in Distributed Systems?
Processes and Threads, communication.
42
What is the near-minimum amount of software that can provide the mechanisms needed to implement an Operating System (OS) called?
MicroKernel
43
What happens if access of a page that it not in the local space is made in a distributed system?
Page fault occurs and it is migrated
44
What is one way to resolve page fault issues?
Replication
45
True or False: Replication for Read-Only Access - reduces access latency
without requiring frequent migrations.
46
What must be done to ensure proper data transfer and process in distributed systems?
Synchronize
47
In the context of shared memory systems
what are we referring to when we say 'false sharing'?
48
What are two examples of Network Operating System?
Windows Server, Unix/Linux
49
Describe the differences between 'Middleware services' and 'Network OS services'
Middleware is built on top of network services
50
Explain the concept 'Same programming interface' in context to OS and middleware
It helps simplify Application Development and reduce the dependencies on specific underlying technologies.
51
What is one of the main differences between 'central' and 'distributed' resource management?
Centralized has a single manager and distributed has multiple managers.
52
How does the OS assist with the implementation of distributed applications
what does it do?
53
What are a few of the functionalities of Core OS?
Thread Creation, Memory Management, Supervisor and etc.
54
What is an advantage of using Thread Manager?
Allows to create, schedule and synchronize threads
55
What are threads also known as?
Lightweight processes
56
A process in a system can have multiple threads
What is the advantage of this?
57
What is a downfall to sharing resources?
If one thread performs a bad function, it can bring down the whole process
58
Is there a way to create new threads
if so how?
59
What is the purpose of Java thread constructor?
Set priority of threads
60
What are the functions of RPC and RMI?
Allows program to execute code on remote systems, enabling distributed computing
61
Are RPC and RMI critical for a distributed system?
Yes, the mechanism and performance of the two are extremely important for performance and effectiveness
62
How would you describe 'null procedure call'?
Function that does not perform any operation.
63
What is a main disadvantage of Remote Procedure Call?
10,000 Times Slower
64
What are common performance factors of RPC and RMI?
marshalling/unmarshalling, data coping, protocol processing
65
What is the purpose of Load Balancing in distributed systems?
Distributing workloads across multiple servers to prevent overload.
66
What is the purpose of Fault Tolerance in distributed systems?
Ensure systems can continue to function even if one or more components fails.
67
In terms of middleware
what is scaling?
68
What are the three examples of implementations of Distributed Systems?
LPC, RPC, and RMI
69
What is the speed of RPC in terms of LPC and RMI?
Faster than RMI and slower than LPC
70
What are examples of cases for using LPC?
Kernal switches between the OS kernel and User Applications
71
What are examples of cases for using RPC?
Communication in game engines and API calls between mobile App and backend server
72
What is middleware responsible for?
Providing distributed abstractions such as RPC, DSM, and Streaming
73
What are three ways to provide reliable performance in distributed systems?
Data Replication, Load Balancing, and Fault tolerance
74
In summary
What must an OS do to provide local support for distributed systems?
75
In summary
What must an middleware do to provide local support for distributed systems?
76
What are benefits of supporting multithreading?
Allow the same program to perform multiple tasks concurrently
77
What type of calls must object.wait() and object.notify() be similar to?
Semaphore Operations
78
What type of methods implement the monitor abstraction?
Synchronized Methods
79
Why should synchronized be used for certain methods?
For certain methods that update the state of an object in a threaded environment
80
What system handles the creation of the operation upon processes?
Process manager
81
What system facilitates communication between different processes on the same computer?
Communication Manager
82
Which system is used to manage the memory on a system?
Memory Manager
83
Where is a system call sent to upon initialization?
Supervisor
84
What are two ways that a kernel can be described?
Monolithic and Microkernel
85
Which Java Thread function changes the state of a thread from 'suspended' to 'runnable'?
Start()
86
Which Java Thread function can be used to indicate how much time a thread should be suspended for?
Sleep()
87
True or False: Threads can only be implemented in the OS kernel?
False
88
What are 2 advantages to implementing threads at User Level?
Lightweight (no system calls) & Modifiable Scheduler.
89
What type of hints can Java offer with Hybrid approaches?
User-Level
90
Communication via messages in private memories is generally slower
why?
91
Which model provides distribution transparency?
Middleware
92
Which model has a focus on local services for remote clients?
NOS
93
What is one downside of Multiprocessors using bus based configurations?
Limited Memory
94
How is memory connected with CPUS in Omega switching network?
CPUs are cross connected with switches
95
What is a difference between system calls in Monolithic vs Micro Kernels?
Monolithic has direct access to the kernel and Microkernels use IPC
96
What does RPC stand for?
Remote Procedure Call
97
What does RMI stand for?
Remote Method Invocation
98
With event-based
what is the full form for "SPIN"?
99
What must an object implement to be ran?
runnable
100
Which layer provides the environment that enables the running of a program?
OS
101
What is a key part of the platform layer?
Communication Network
102
What is the most widely adopted communication model between processes?
TCP
103
What type of systems are required for "High-performance computing applications"?
Distributed Systems