Winter16 CS111 Lecture 1
    Course logistics
    
      Course Website
    
    What is a system?
    OED original (1928)
    
      - An organized or connected group of objects
 
      - A set of principles, etc, a scheme, method
 
      - from Ancient Greek, σύστημα,
	organized whole, government, constitution, a body of people or
	animals, musical instruments.
 
    
    Operating System
    
      - American Heritage
 
      - software designed to control the hardware of a data proccessing system in order to
	allow users and applications programs to make use of if.
 
      - Encarta (2007)
 
      - master control program in a computer
 
      - Wikipedia 698216816 (2016-01-04)
 
      - collection of smaller programs and softwares that is used to control and operate the
	computer system
 
    
    Major Missing Issues of the Definitions above
    
      - resource management
 
      - reliability and error handling
 
      - Security
 
    
    Example:
    
    Circa 2000 hardware
    $ ls -l big
    -rw-rw-r-- 1 eggert faculty 9223372036854775000 Oct 6 11:31 big
    $ grep x big
    $ time grep x big
    real 0m0.009s
    
    This gives us a speed of approximately 1022b/s. According to
    http://what-if.xkcd.com/31/ the
    bandwidth of the Internet is 1011b/s, and if we hire all the freight
    trucks in the US to transport hardrives, the speed will be approximately 0.5Zb/s.
    The explanation behind this amazingly high speed is because that in ZFS(zeta File System),
    big is an intensional file, which only stores a description or program of the file on the
    desk. This type of file can be used in anti-virus softwares to allievate the workload of
    the program.
    Problem Areas in OS Design
    
      - Incommensurate Scaling
 
      - not everything scales at the same rate
	
	  - economies of scale
 
	  - can cause waste
	    Example: O(logN) algorithm and Adam Smith's
	    Pin Factory 
	  - diseconomies of scale
 
	  - can cause breakage
	    Example:O(logN2) algorithm 
      
 
      - Emergent Properties
 
      - larger systems have properties that smaller prototypes didn't
	Examples:
	
	  - Tacoma Narrows Bridges
 
	  - UCLA Campus Network
 
      
 
      - Propagation of Effects
 
      - Propagation of effects also exist in other systems, but in computer
	systems, pathways for propagations are more effective.
	Example:
	 Internationalization: Shift-JIS encoding used in Windows system 
      - Tradeoffs
 
      - Waterbed Effect
	Example:
	
	  - In previous example, Linux system chose UTF-8 encoding rather
	    than Shift-JIS encoding but UTF-8 encoding requires more memory
	    than Shift-JIS encoding does
 
	  - Security tradeoff: password VS RSA and password