Section 1

Preview this deck

Operating system calls

Front

Star 0%
Star 0%
Star 0%
Star 0%
Star 0%

0.0

0 reviews

5
0
4
0
3
0
2
0
1
0

Active users

0

All-time users

0

Favorites

0

Last updated

6 years ago

Date created

Mar 1, 2020

Cards (36)

Section 1

(36 cards)

Operating system calls

Front

An interface to operating system services made available to applications software by an operating system.

Back

Symmetric multiprocessing (SMP)

Front

Multiprocessing system in which each processor performs all tasks within the operating system

Back

Shared memory vs. Message passing

Front

Shared memory - A region of memory that is shared by cooperating processes is established. Processes can then exchange information by reading and writing data to the shared region. This can be faster than message passing since message passing is typically implemented using system calls.

Back

Process Control Block (PCB)

Front

Representation of a process in the operating system.

Back

Time sharing

Front

The CPU executes multiple jobs by switching among them, but the switches happen so frequently that the users can interact with each program while it is running.

Back

Blocking receive vs. Non-blocking receive

Front

Blocking = synchronous - a process cannot be interrupted while executing. Other processes must wait for the current one to finish execution before doing theirs. Non-blocking = asynchronous - processes can be interrupted during execution. Blocking Receive - The receiver blocks until a message is available Non-blocking receive - The receiver retrieves either a valid message or a null.

Back

POSIX

Front

Portable Operating System Interface for uniX. We looked at POSIX examples for shared memory, message passing, and Pthreads.

Back

Operating system

Front

A program that manages the computer hardware, provides a basis for application programs, and acts as an intermediary between the computer user and the computer hardware.

Back

Interactive system

Front

Provides direct communication between the user and the system. The user gives instructions to the os or to a program directly using an input device such as a keyboard.

Back

Busy Waiting

Front

Waiting while holding the CPU, typically waiting by loop, doing nothing. **A process in a WAITING state is NOT BUSY WAITING because it is not holding the CPU.

Back

Batch system

Front

Typically large, run at off-peak times, with no user present. E.g., overnight accounting runs, daily update of CheckMarq records. Batch mode is an old business data processing mode, still VERY widely used in mainframe business data processing. TABot is a batch system.

Back

Shared memory systems

Front

A region of memory residing in the address space of two or more cooperating processes. Separate CPUs that address a common pool of memory

Back

Kernel Mode

Front

States of the processor. Normally, the processor is in user mode, executing instructions on behalf of the user. The processor must be in kernel mode to execute privileged instructions.

Back

Kernel

Front

Part of the OS that is running all the time, core OS processes. Handles calls bt the OS and the hardware.

Back

Security

Front

Defending a system from internal and external attacks. Protection != Security.

Back

Process

Front

Program in execution, a unit of work in a modern time-sharing system.

Back

Virtual machine

Front

An abstraction of the hardware of a single computer into several different execution environments, creating the illusion that each computing environment is running its own private computer.

Back

Clustered systems

Front

Two or more individual (computer) systems gathered together to accomplish computational work.

Back

Process State

Front

Defined by the current activity of the process. Each process may be in one of: New, Running, Waiting, Ready, Terminated.

Back

Kernighan's Law

Front

"Debugging is twice a hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it."

Back

Interprocess Communication (IPC)

Front

shared memory and message passing

Back

Priority inversion

Front

A high priority process is forced to wait for a lower priority process to release some resource(s). For example, suppose a high priority process is running and blocks to wait for some resource, say a disk read. Since the high priority process is waiting, the schedule runs a lower priority process. As the lower priority process is running, the disk read completes, and the high priority process is moved to the Ready list, but it does not run until the lower priority process relinquishes the CPU. To counter this form of priority inversion, when the disk read completes, the scheduler may interrupt the low priority process to let the high priority process run. As another example, a high priority process may request a service from a lower priority process. Then the high priority process must wait until the lower priority process gets to run. Priority inversion does not involve changing the priority of a process.

Back

User Mode

Front

User mode is a state of the operating system in which most instructions of user applications are executed. Kernel mode is a state of the operating system in which some critical portions of the operating system is executed. What is it called when a user process makes an operating system call for service? Most operating system code is executed in user mode.

Back

Privileged instructions

Front

Some hardware instructions that may cause harm. May be executed only in kernel mode. Examples: Instruction to switch to kernel mode, I/O control, timer management, interrupt management.

Back

Deadlock

Front

when two or more processes are completely blocked waiting for actions of other processes, which are also blocked. Deadlock requires four conditions: Mutual exclusion, Hold and wait, No preemption, and Circular wait.

Back

Starvation

Front

when one (or more) processes are logically able to run, but never get their turn. For example, if we are doing priority scheduling, and high priority processes arrive so often that lower priority processes never get a chance to run, we say the lower priority processes are starved. Or you have so many critical homework assignments that you never get around to calling your Mother. In principle, starvation can be cured by a faster processor.

Back

Non-blocking receive

Front

Receive a message. If no message is there, return from the receive() function all immediately.

Back

Blocking send vs. Non-blocking send

Front

Blocking send - The sending process is blocked until the message is received by the receiving process or by the mailbox. Non-blocking send - The sending process sends the message and resumes operation. (Interrupt driven)

Back

Message Passing

Front

Communication takes place by means of messages exchanged between the two cooperating processes. This is good for storing small amounts of data because no conflicts need to be avoided.

Back

Message passing systems

Front

A mechanism to allow processes to communicate and to synchronize their actions without sharing the same address space. A message-passing facility provides at least two operations: send(message) and receive(message).

Back

Race condition

Front

Several processes access and manipulate the same data concurrently, and the outcome depends on what happens to be the order of execution.

Back

Process vs. Thread

Front

A process is a program in execution. A process may include several threads. A thread is a basic unit of CPU use. It includes a thread ID, a program counter, a register set, and a memory stack.

Back

Process scheduling

Front

Switch between processes so frequently that users can interact with each process. Select a process from the Ready list for execution in the CPU.

Back

Real-time system

Front

Typically time-sensitive interaction with external devices.

Back

Protection vs. Security

Front

Mechanisms for controlling access to the resources provided by a computer system. Protection controls access to computer system resources.

Back

Embedded system

Front

A dedicated function within a larger mechanical or electrical system, often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. Embedded systems control many devices in common use today.

Back