Title: Understanding Operating Systems Fifth Edition
1Understanding Operating Systems Fifth Edition
2History
- Developed by Linus Torvalds (1991)
- Original purpose
- Maximize Intel 80386 microprocessors limited
capabilities - Roots
- Minix miniature UNIX with more functionality
- First version meant for small microcomputer
- Expensive commercial computer features
- Flexibility and functionality
- Brought UNIX features to small computer
3History (continued)
- Open-source program
- Updates accepted from anyone
- User interface
- Originally typed and cryptic commands
- Today
- Command-driven interface (Terminal mode)
- Graphical user interface (GUI)
- Red Hat Linux provided initial primary support
- Worlds leading Linux distributor (until 2003)
- GNU General Public License
4Design Goals
- Three goals
- Modularity
- Simplicity
- Portability
- Conforms to IEEE POSIX specifications
- Portable Operating System Interface for Computer
Environments
5Design Goals (continued)
6Device Management
7Device Classes
8Device Classes (continued)
- Character (char) devices
- Accessed as a stream of bytes
- Communications port, monitor, other
byte-stream-fed device - Implement open, close, read, write system calls
- Drivers treated as ordinary files
- Exception drivers are data channels accessed
sequentially
9Device Classes (continued)
- Network interfaces
- Function
- Send and receive information packets
- Directed by network subsystem
- Network device functions
- Relate to packet transmission
- Not read and write calls
- Dissimilar from block and char
10File Management
- Data structures
- Filename conventions
- Directory listings
11Data Structures
- Files organized in directories
- Connected in treelike structure
- Five file types
12Filename Conventions
13Filename Conventions (continued)
- Path name rules
- Path name starting with slash (at root directory)
- Path name
- One name or list of names separated by slashes
- Last name on list
- Name of file requested
- Preceding names must be directory names
- Two periods (..) in path name
- Move upward in hierarchy (closer to root)
- Only way to go up hierarchy
- Other path names go down tree
14Filename Conventions (continued)
- Data structures Virtual File System (VFS)
- Kernel
- Allows processes to access files in a consistent
manner - Maintains interface between file related system
calls and file management code - Virtual file system layer
- Receives process-initiated system call to files
- Performs file operations
- Independent of file system format
- Redirects request to module managing file
15Directory Listings
- Creation
- ls or ls -l command
- GUI interface
- Displays
- File or directory name
- Size
- Modification date and time
- Permissions column
- Code files type and access privileges
- Order of letters indicates the specific access
granted
16Directory Listings (continued)
17Directory Listings (continued)
18Directory Listings (continued)
- First column character nature of folder entry
- Dash (-) indicates a file
- d indicates a directory file
- l indicates a link
- b indicates a block special file
- c indicates a character special file
- Next three characters (rwx) file owner
privileges - r indicates read access
- w indicates write access
- x indicates execute access
19Directory Listings (continued)
- Next three characters
- Group access privileges
- Group set of users, excluding owner, having
something in common (project, class, department) - System-wide group of users world
- Last three characters
- Access privileges granted to others
- Others users at large (excluding owner and group
member)
20Directory Listings (continued)
- Change file security
- Owner (and only the owner) opens file properties
to be protected - File-Properties from the File menu
- Click on Permissions tab
- Choose the appropriate access
- For owner, group, others
21Directory Listings (continued)
22Command-Driven Interfaces
- Typed command general syntax
- command arguments filename
- Command legal operating system command
- Arguments required or optional
- Filename filename
- Relative or absolute path name
- Shell (bash shell)
- Command interpreter
- Interprets and executes command
- Key to system program coordination and combination
23Command-Driven Interfaces (continued)
24Graphical User Interfaces
- Multiple graphical user interfaces (often free)
- Allowing choice for end users
- Different GUIs used by different users on same
system (certain environments) - Flexibility
- Spurring Linux acceptance
- Sophisticated Windows-compatible word processors,
spreadsheet, presentation applications (some at
no cost) - Spurring Linux popularity
25System Monitor
- System Monitor window
- System well-being information
- Immediate history
- CPU, memory, network usage
- Other information
- Supported file systems
- Currently running processes information
26System Monitor (continued)
27Service Settings
- Variety of services help manage system
- Linux distribution dependent (see documentation)
28System Logs
- System logs
- Provide detailed description of activity on
system - Invaluable to administrators
- Tracking system malfunction
- Firewall failure
- Disabled device
- Found in /var/log directory
- System log viewer to see data
29System Logs (continued)
30Keyboard Shortcuts
- Users easily switch from one task to another
- Keyboard shortcuts
- Many identical to commonly used Windows operating
systems shortcuts - Ease operating system transition
- Example CTRL-V
- Quick way to issue PASTE command
- Linux, UNIX, and Windows
31Keyboard Shortcuts (continued)