UNIX - PowerPoint PPT Presentation

About This Presentation
Title:

UNIX

Description:

UNIX shell- a command interpreter ... shell scripts: commonly used sequences of shell command can be stred in files and executed. ... – PowerPoint PPT presentation

Number of Views:110
Avg rating:3.0/5.0
Slides: 21
Provided by: higg2
Category:
Tags: unix

less

Transcript and Presenter's Notes

Title: UNIX


1
UNIX
  • Unix is an operating system developed at Bell
    Labs in 1969.
  • Like all operating systems, unix manages the
    resources of the computer and provides an
    interface for users to access system functions.
  • Unix is a general purpose op. sys. It is used,
    for example, by Sun to develop java applications.
    It is not suited to real time applications.
  • It was designed to provide a superior sw
    development environment to be simple, powerful,
    and compact.
  • It was originally written in pdp-7 (DEC) assembly
    language by Ken Thompson so he could run his
    program space travel on the pdp.

2
UNIX more history
  • The uni- part refers to unix being developed for
    single users originally.
  • Unixs history is intertwined with the
    development of C, also at Bell labs. Thompson
    developed a language called B which was used to
    help transport Unix to the Pdp-11 in 1971.
  • Unix became the o.s. of choice for the pdp-11
    computer, preferable to DECs own o.s.
  • Dennis Ritchie, also at Bell Labs, refined the
    B language to create C.
  • Unix was itself rewritten in C in 1973.
  • Unix was adapted to a 16 bit microcomputer by a
    small company, Onyx, in 1980.
  • There are many versions out there Xenix, Ultrix
    are a couple.

3
Key Features
  1. Portability
  2. Portable applications sw
  3. Multiuser operation (it can support multiuser
    mainframe environments)
  4. Background processing
  5. Hierarchical file system
  6. UNIX shell- a command interpreter
  7. Pipes- allows several prgrams to be combined so
    that the output from one becomes input to the
    next
  8. Utilities
  9. Text-processing tools
  10. Sw development tools
  11. maturity

4
Structure of UNIX
  • The kernel is the core of the system controlling
    hardware and performing lowlevel functions.
  • The shell is the command interpreter (user
    interface).
  • Two hundred utility programs provide functions
    like file copy, text edit, sw compilation and so
    on.
  • User programs logically occupy directory space
    analogous to the utility programs.

5
The kernel
  • The kernel interacts directly with system
    hardware, implements the file system, manages
    memory, enforces security, performs I/o. If the
    system is muti-user, the kernel provides the
    system timesharing capability.

apps
utilities
shell
kernel
Hardware peripherals
6
The kernel
  • The kernel also maintains system logs.
  • Since the kernel interacts directly with the
    system hw, the kernel is custom written for each
    processor type that unix runs on.

File mgmt security
Date/time svces
I/o svces
kernel
Process scheduling
Ints and Error handling
System accounting
Memory mgmt
7
Call interface
  • Utilities and applications call the kernel to
    provide services.
  • The call interface is the same for unix no matter
    what hw it runs on.

User program wants service
Call Request service Type Details data
Return Service complete Status data
UNIX kernel provides services
8
The file system features
  • Hierarchical
  • Dynamic file sizes grow as needed
  • Structureless no internal structure is imposed
  • Security files can be protected from access by
    other users
  • File device independence files and I/o
    devices are regarded the same by the o.s. So the
    same utilities used to process files can be used
    to process data from the terminal or as it is
    sent to the printer.

9
Files directories
  • File names can be up to 14 characters.
  • A directory can be used to organize files. A
    directory is really just a file with a list of
    entries (file names) in it as well as information
    on where to find those files in the system (in a
    data structure called the inode).
  • Users typically have their own directories.
  • Files can have multiple names and multiple links
    (from different directories) Below, the
    filenames People and XYZ refer to the same file.
  • Directory A Directory B
  • Results 0011 - XYZ 1122
  • People 1122
  • Data 0123
  • Files file 0123 file 0011 file 1122

10
Hierarchical systems and path names
  • Typical file systems have many levels / (root)
    in unix is at the top.
  • Path names are separated by forward slashes
    (division sign) with a slash first if the
    pathname starts at the root directory
  • /usr/higgins/csci201/unixnotes
  • Such a path name is called fully qualified
    because the complete path from the root to the
    file is identified.
  • Partial pathnames can be used, these are
    relative, indicating a path from the current
    working directory. If I am in /usr/higgins then
    the name csci201/unixnotes identifies the same
    file.
  • Unix maintains information on each file
    location, size, link count, ownership, security
    setting, type, creation date, most recent
    modification, last access.

11
devices
  • Typical unix devices are
  • /dev/lp (line printer)
  • /dev/dk0 (disks)
  • /dev/dk1 (etc)
  • /dev/rdk0 (disk as raw I/o device)
  • /dev/tty0 (terminals)
  • /dev/null
  • To copy a file to another file location you would
    type
  • cp fname othername
  • To copy the same file to the printer you would
    type
  • cp fname /dev/lp

12
directories
  • /bin utilities
  • /dev special files (I/o devices)
  • /etc administration
  • /lib libraries used by the language processors
  • /tmp temporary
  • /usr/bin overflow for /bin
  • /adm/bin adminstration files
  • /usr/games
  • /usr/include include files for C
  • /usr/lib archive libraries and textprocessing
    macros
  • /usr/mail
  • /usr/spool spool files for printing
  • Usr/src source files

13
Hierarchy chart / is the root
/
usr
lib
tmp
etc
dev
bin
bin
tmp
higgins
14
File management utilities
  • pwd prints name of the current working
    directory
  • cd change pwd
  • ls list directory contents
  • cat concatenate files
  • mv move/rename file
  • ln create a new link for a file
  • cp copy files
  • mkdir make a dir
  • rm remove a file
  • rmdir
  • du display disk utilization
  • df display tree blocks for mounted systems
  • touch update time of last mod for a file
  • find find files

15
examples
  • pwd show present working directory
  • /usr/higgins/courses/csci201
  • cd /usr/higgins/courses/csci311 change to
    directory specified
  • ls /usr/higgins/courses/csci201 list directory
    contents
  • assignments
  • sampletests
  • classlist
  • cat classlist show file contents on terminal
  • bob
  • joe
  • sue
  • mary
  • rudolf
  • xenophon

16
examples- continued
  • most common use of cat is to show file contents
  • mv changes a filename
  • mv classlist students
  • mv can similarly be used to rename a directory
  • ls- l means list long, and gives more details
    about files in the directory.
  • ln is used to create additional links (not
    additional copies) of a file
  • ln students classlist
  • cp makes a duplicate file
  • cp classlist list
  • mkdir creates a new directory
  • mkdir /usr/higgins/courses/csci116

17
examples- continued
  • rm is used to remove a file
  • rm list
  • rm can be used to delete directories and their
    contents also if you use
  • rm r /usr/higgins/courses
  • rmdir can be used to remove (delete) empty
    directories.

18
File storage Buffered disk access
  • Whatever block size the system uses the location
    of the first ten blocks of a file are stored in
    the inode. If the file is larger than 10 blocks,
    then the address of an indirect block is stored
    in the inode as well, which has the addresses of
    the files subsequent blocks. This technique is
    applied up to 3 times (triple indirection). The
    inode stores the location of a triple indirect
    block which stores the addresses of double
    indirect blocks, each of which stores the
    addresses of sngle indirect blocks, which point
    to file blocks on the disk.
  • As with most modern operating systems, i/o is
    buffered in unix This means that some disk
    blocks are duplicated in main memory. A read
    request first checks if the required data is
    already available. If not, it can be brought
    into the buffer. When the buffer is full and a
    read requests new data, some must be swapped out
    of the buffer. Similarly, write requests write
    to a buffer until the buffer is full or is
    flushed.

19
the unix shell
  • The shell provides an interface between the user
    and unix o.s. services.
  • Some features of this command interpreter are
  • interactive the user has a dialog with the
    computer
  • background processing time consuming tasks can
    be run in the background
  • i/o redirection program i/o can be redirected
    from/to other files, the terminal, the printer,
    etc.
  • simple programs can be piped together to perform
    more complex operations
  • wild-card matching a pattern can be used to
    select files for processing so that a number of
    files can be processed with a single command
  • shell scripts commonly used sequences of shell
    command can be stred in files and executed.
  • shell variables can be used to control the shell
    and other programs

20
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com