Title: CSCI 3753 Operating Systems Spring 2005
1CSCI 3753 Operating SystemsSpring 2005
- Professor Rick Han
- Department of Computer Science
- University of Colorado at Boulder
2CSCI 3753 Announcements
- Who am I?
- Review of syllabus
- TA introduces first programming shell assignment
(similar to lab exercise 2.1) and CSEL logistics - Introduction to Operating Systems
- Read chapters 1 and 2 in the textbook
3What is an Operating System?
- Windows, Linux
- What is an application?
- Powerpoint, Realplayer
- What is hardware?
- An operating system is a layer of software
between applications and hardware
Applications
Operating System
Hardware
4What is an Operating System?
App2
- An operating system is a layer of software
between many applications and diverse hardware
that - helps to better manage the hardware for an
application - otherwise an application saving a file to disk
would have to know how the disk operates - helps to share resources and isolate access to
resources between multiple applications
App3
App1
Operating System
Disk
Memory
CPU
Display
Mouse
I/O
5What is an Operating System?
App2
- A PC operating system consists of multiple
components - scheduler
- virtual memory system
- file system
- other...
App3
App1
OS Kernel
Disk
Memory
CPU
Display
Mouse
I/O
6What is an Operating System?
App2
App3
App1
System Libraries and Tools (Compilers, Shells,
GUIs)
OS Kernel
Memory
CPU
Disk
Display
Mouse
I/O
Note different OS kernels can support the same
system call API
7What is an Operating System?
- Distributed Operating Systems
- Networked File System
- OS adds TCP/IP Network Stack
- Device driver support for Networking cards
Network
e.g. Internet, or Ethernet, or WiFi
- Examples
- App1 is a distributed client server app, e.g.
App1 on left is Web browser, App1 on right is Web
server
8Operating System Trends
- Hardware has evolved quickly - OS must adjust
- Moores Law applies to CPU speed and/or memory
size doubles every 18 months gt exponential! - But Moores Law doesnt apply to disk access
speed or to battery life - Diverse devices with high bandwidth requirements
9Operating System Trends
- Hardware support for operating systems has
evolved too - Mode bit support in CPU
- user mode vs. kernel/supervisor mode
- early PCs did not have this support
- Todays embedded microcontrollers also lack this
support - Page faulting hardware and MMU
- Lack of such HW support can allow user programs
to accidentally or maliciously overwrite OS
kernel code!
10Operating System Trends
- Proliferation of OSs on large scale and small
scale and across features - Multi-processor OSs - scaling up
- Cell phone OSs - scaling down
- Real-Time OS for Embedded and Multimedia Systems
11Operating Systems Key Concepts
- Multiprogramming
- when CPU idle (e.g. blocked on I/O), run another
program gt improved CPU utilization - batch mode - running jobs or programs
sequentially, one after the other - Time sharing and concurrency - finely interleaved
sharing of CPU - useful to give impression of interactivity!
12Operating Systems Key Concepts
- Time-sharing examples
- multiple processes sharing time locally on a CPU
- multiple user terminals remotely sharing
processing time with a central server - keystroke delay
13Operating Systems Research
- Papers are published at premier OS conferences
like - ACM SOSP 2005 (Symposium on Operating Systems
Principles) - http//www.sosp-20.com/ - USENIX OSDI 2004 (Operating System Design and
Implementation) - http//www.usenix.org/events/osd
i04/ - Secure Operating Systems
- Wireless Sensor Networks
14Wireless Sensor Networks
- Groups of sensor nodes connected by a wireless
networking fabric
- Sensor nodes consist of CPU/memory, radio,
sensors, and power units - Monitor environment
- Self-configure into wireless multi-hop network
15Applications of Wireless Sensor Networks
- Nature
- Wildlife Great Duck Island (Berkeley 2002)
- Habitat San Jacinto Nature Preserve (UCLA)
- Monitor atmosphere (NCAR)
- Home
- Security (commercial)
- Medical - Assistive Technology (BP Visualization
Center, L3D, Ga Tech) - Mobile/Robotic WSANs
16Military Applications of Sensor Nets
- Battlefield monitoring
- Sound, heat, metal, vibration
- Deployed in Vietnam, Afghanistan, Iraq
- REMBASS II, UGS,
Basestation
Wireless sensor network
17 - MANTIS Research Project at University of Colorado
at Boulder, Dept Computer Science - Professor Rick Han
- 10 undergraduate and graduate students
- http//mantis.cs.colorado.edu
- Designed the MANTIS OS for micro sensor nodes -
multithreaded, in C - Designed the ELF flash file system for micro
sensor nodes