Unix Flashcards
List Key Advantages of Linux over other Unix variants.
- Ability to dynamically load and unload kernel code on demand
- Preemptive
- No differentiation between threads and processes.
- Object-oriented device model with device classes, hot pluggable events, and user-space device file system (sysfs)
- Free, open development model
- Multi-user, multi-tasking, and portable
A program that provides the user a command-line interface (CLI) to the kernel.
Shell
A running program; an instance of a program in execution.
Process
A program that runs unobtrusively in the background, rather than under the direct control of a user, that waits for activation by the occurence of a specific event or condition.
Daemon
Similar to threads in Windows, this shares most, if not all, of its logical address space and system resources with other processes.
Lightweight Process
The fundamental interface between an application and the Linux kernel.
System Call Interface
A wrapper function for a system call of a Linux kernel. These are part of the standard C library and are either static (.a) or dynamically linked shared object (.so)
Library Function
What are the two rings of Unix?
User Mode (Unprivileged) and Kernel Mode (Privileged)
What are the User Mode components?
- Applications
- Windows Manager
- Libraries
What are the components of the Kernel Mode?
- System Call Interface
- Process Management
- Inter-process Communication
- Virtual File System
- Memory Management
- Network Subsystem
- SELinux
- Drivers and Dynamic Modules
- Architecture Dependent Code (Board Support Packages)
What is the Hardware Component?
Processor Architecture
A family of related standards specified by the IEEE that defines the API of a UNIX OS.
Portable Operating System Interface for uniX (POSIX)
What are some user initiated processes?
- Shells
- UNIX Commands
- Utility Programs
- User Application Programs
- Libraries (GNU C Library glibc)
Provides the user interface to the kernel; Linux CLI is an example.
Shell
What is an implementation of the standard C library used by many OSs and programs on those systems?
GNU C LIbrary (glibc)