Operating System Basics What Does an Operating System Do?

Operating System Basics What Does an Operating System Do?

Operating System Basics What does an Operating System do? - A way to execute programs (user/computer interface) - Allocates resources to programs efficiently and fairly - Manages resources - memory, cpu, devices, file system - Schedules jobs - Provides security and protection from others Operating System Basics Nutt: “... only the most skilled and experienced programmers are allowed to design and modify a computer's operating system.” Process – a program in execution - has an address space - process table, parent-child relationship The Shell Operating System Overview Thread – a unit of work. Multithreading allows a process to be divided into a number of threads so multiple things can be done concurrently. Deadlocks - Memory Management – memories not big enough -> virtual memory I/O – Programmed, Intr driven, DMA Files, Security and more... File management OS responsible for managing data on disks (programs, and data). Filesystems – a general way to store files File descriptors – a structure with info about open files File types – several types of files Big advancement: ZFS Unix 1970 – Bell Labs version 7 – 1978 – ancestor to most modern UNIX systems BSD, SYSV, Linux, (Open)Solaris UNIX kernel – core of OS system calls – user hooks into kernel library calls – user land routines - eventually end up doing system calls Unix Daemons – processes running (in the background) usually to perform some service. Example daemons – httpd, smtpd, sshd cron – clock daemon (start jobs at a time given in crontab) File permissions - ls, chmod - rwx, user, group, other Unix development environment Editors – vi, emacs make compilers – cc, gcc debuggers – dbx, gdb IDE – sunstudio, eclipse Trace system calls: truss, strace Powerful tracing: Dtrace Homework: run 'truss ls' Booting a Unix System Boot block boot loader (grub) start kernel start init (usually pid 1) start start-up scripts - flavors: BSD, SYSV, Solaris SMF - usually start services the system provides (many daemons) Start up systems BSD rc scripts - shell scripts ran during boot - check filesystems and mount - start services and other things - many things in a few scripts SYSV init.d scripts - Have run levels (S, 0, 1, 2, 3..) - Scripts run when entering a run level - Have one script for each service Solaris SMF Service Management Facility Introduced in Solaris 10 A big improvement over the past Services are defined commands: svcs, svcadm, svccfg Knows dependencies has milestones Will restart a daemon that dies XML files and scripts.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us