Lecture 3 Distributed

5.0(2)
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/38

flashcard set

Earn XP

Description and Tags

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

39 Terms

1
New cards
Middleware

A layer of software between applications and the operating system that enables communication and connectivity in a distributed system.

2
New cards
Network Operating System (NOS)

An operating system that allows communication based on files and provides network transparency.

3
New cards
Distributed Operating System (DOS)
An operating system that allowscommunication based on messages andshared memory.
4
New cards
Autonomy
The degree of independence or self-governance of a machine or system.
5
New cards
Fault tolerance

The ability of a system to continue functioning properly in the presence of faults or errors.

6
New cards
Multitasking

The ability of an operating system to run multiple applications simultaneously.

7
New cards
Multithreading

The ability of an application to perform multiple operations at the same time.

8
New cards
Concurrency

The ability of multiple processes or threads to run concurrently.

9
New cards
Thread

A sequence of instructions that runs concurrently with other threads in a program.

10
New cards
Threaded application

An application that uses multiple threads to perform tasks concurrently.

11
New cards
Thread manager

A component of the operating system that manages the creation and execution ofthreads.

12
New cards
Memory manager

A component of the operating system that manages the allocation and deallocation of memory.

13
New cards
Synchronization

The coordination of multiple threads to ensure proper execution and avoid conflicts.

14
New cards
Inter-Thread Communication

The exchange of data or messages between threads.

15
New cards
Extending Thread class

A method of creating a thread by extending the Thread class and overriding the run()method.

16
New cards
Implementing Runnable interface

A method of creating a thread by implementing the Runnable interface and overriding the run() method.

17
New cards
Life Cycle of Thread

The different states and transitions a thread goes through during its execution.

18
New cards
Dispatch

The process of selecting a thread to run by the operating system.

19
New cards
Class

A blueprint or template for creating objects in object-oriented programming.

20
New cards
Run

The method in a thread class that contains the code to be executed when the thread is started.

21
New cards
Start
The method used to start a thread's execution.
22
New cards
FCFS policy

First-Come-First-Serve policy, where threads are served in the order they arrive.

23
New cards
Synchronized

A keyword in Java used to control access to shared resources by allowing only one thread to execute a synchronized method at a time.

24
New cards
Shared Resources

Resources that are accessed by multiple threads and need to be coordinated to prevent inconsistent states.

25
New cards
Inconsistent State

A state where the data accessed by multiple threads is not synchronized, leading to incorrect or unpredictable results.

26
New cards
Worker Pool

An architecture for multithreaded servers where a fixed pool of worker threads is created to process requests.

27
New cards
Thread-per-request

An architecture where a new thread is allocated for each incoming request and disposed of after the request is complete.

28
New cards
Thread-per-connection

An architecture where a thread is allocated for each client TCP connection and used for all requests arriving over that connection.

29
New cards
Alternative server threading architectures

Different approaches to managing threads in a server to handle multiple requests concurrently.

30
New cards
Thread-Per-Server-Object

An architecture where each object in the server has its own thread of execution, allowing multiple requests to be processed concurrently as long as they are using different objects.

31
New cards
Thread churn

The creation and destruction of threads, which can lead to inefficiencies in server performance.

32
New cards
Concurrency issues

Challenges that arise when multiple threads are accessing and manipulating shared resources simultaneously.

33
New cards
Locking strategy

A method used to control access to shared resources by allowing only one thread to access the resource at a time.

34
New cards
Deadlock

A situation where two or more threads are blocked indefinitely, waiting for each other to release a resource.

35
New cards
Worker pool

An architecture where a fixed number of threads are created and shared among multiple requests, improving efficiency by reusing threads.

36
New cards
Thread-per-request

An architecture where each request is assigned its own thread, allowing for parallel processing of requests.

37
New cards
Thread-per-connection

An architecture where each TCP connection is assigned its own thread, allowing for parallel processing of requests within the same connection.

38
New cards
Threads synchronization

The process of coordinating the access and manipulation of shared resources by multiple threads to avoid conflicts and ensure data consistency.

39
New cards
Separating mechanisms from policies

A design principle in operating systems that allows for flexibility by separating the implementation details (mechanisms) from the decision-making rules (policies).