1 / 32

OPERATING SYSTEM

OPERATING SYSTEM. Presented by, Mrs.D.Jothi, MCA., Asst.Professor, Dept. of Maths with CA, RRC, RJPM. Introduction and History of OS. Where does the operating system fit in a computing system? What does the operating system achieve? What are the general OS functions?

gsams
Télécharger la présentation

OPERATING SYSTEM

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OPERATING SYSTEM Presented by, Mrs.D.Jothi, MCA., Asst.Professor, Dept. of Maths with CA, RRC, RJPM

  2. Introduction and History of OS • Where does the operating system fit in a computing system? • What does the operating system achieve? • What are the general OS functions? • Who needs an operating system? • What is operating system? • History of operating system

  3. Where does the OS fit in? • The layer between the hardware and the user program (application programs). • OS is a software system that directly interacts with the hardware. User programs Operating system interface Operating system Hardware interface Hardware

  4. Hardware • CPU, registers, disks, monitors, etc • Hardware interface • the instruction set • other things like interrupt – anything that a programmer needs to know in order to write programs that use the hardware. • Operating system • Implements the OS interface + resource management • OS interface • The enhanced instruction set: hardware instruction set + special instructions called “traps” or “system calls”. • User programs: • Instructions in the enhanced instruction set + data

  5. Question: How many of you have dealt with the OS (enhanced) interface before? • One more layer between a typical user program and the OS interface, the programming environment (compiler + run time library). • cout << “hello world.\n”  write(1, “hello world.\n”, 13); User programs programming environment Operating system interface Operating system Hardware interface Hardware

  6. What does the OS achieve? • Make it easy to write programs • Add more powerful instructions to the hardware instruction set. • What kind of instructions are added? • Common functions used by many different applications. • E.g. write (fileno, buf, len); • Resource virtualization • E.g. the illusion of Infinite memory.

  7. The OS must fill the gap between how you run a program and how the hardware runs a program. The OS must be able to: • Take the user command (g++, a.out, etc) – shell • Find the executable file (g++ or a.out) – File system • Load the executable into memory – memory management • Set the registers properly (e.g. pc = starting address of the executable) • When there are multiple programs running, the OS must make each program feel like it solely owns the whole machine (CPU, memory, registers) – virtual machine for each process • Manage processes. • OS functionality:Implements the OS interface + resource management

  8. What does an OS achieve? • It hides the complexity and limitations of hardware (hardware interface) and creates a simpler, more powerful abstraction (OS interface).

  9. Hardware reality vs. OS abstraction

  10. What are the general OS functions? • Standard services • Screen display, disk accesses, etc • Coordinationamong applications • Protection, correctness, efficiency, and fairness

  11. Coordination • Example: Protection • Applications should not crash one another • Address space: all memory addresses that an application can touch. • Address space for one process is separated from address space for another process and from the OS. • Applications should not crash the OS • Dual-mode operations • Kernel mode: some instructions can only be executed by the OS (must be executed with a kernel mode). • User mode: an application can only access its own address space • Examples of kernel mode instructions?

  12. What is the operating system? • OS is the software layer between the hardware and user programs. • OS is the ultimate API. • OS is the first program that runs when the computer boots up. • OS is the program that is always running. • OS is the resource manager. • OS is the creator of the virtual machine.

  13. Resources managed by OS • CPU: process management • Memory: memory management • Storage: storage and file management • I/O devices: I/O management

  14. Who needs OS? • OS makes a computer easier to use • All general purpose computers need OS. • A better question: Who does not need OS? • Some very specialized systems that usually do one thing (OS can be embedded in the application). • Microwave oven control • MP3 players, etc.

  15. History of OS: Change!

  16. History Phase I: Hardware Expensive, Humans Cheap • Hardware: mainframes • OS: human operators • Handle one job (a unit of processing) at a time • Computer time wasted while operators walk around the machine room

  17. OS Design Goal • Efficient use of the hardware • Batch system: collects a batch of jobs before processing them and printing out results • Job collection, job processing, and printing out results can occur concurrently • Multiprogramming: multiple programs can run concurrently • Example: I/O-bound jobs and CPU-bound jobs

  18. History Phase II: Hardware Cheap, Humans Expensive • Hardware: terminals • OS design goal: more efficient use of human resources • Timesharing systems: each user can afford to own terminals to interact with machines

  19. History Phase III: Hardware Very Cheap, Humans Very Expensive • Hardware: personal computers • OS design goal: allowing a user to perform many tasks at the same time • Multitasking: the ability to run multiple programs on the same machine at the same time • Multiprocessing: the ability to use multiple processors on the same machine

  20. History Phase IV: Distributed Systems • Hardware: computers with networks • OS design goal: ease of resource sharing among machines

  21. An operating system (OS) is system software that manages computer hardware and software resources and provides common services for computer programs

  22. GUI - Short for Graphical User Interface, a GUI operating system contains graphics and icons and is commonly navigated by using a computer mouse. See the GUI definition for further information. Examples of GUI operating systems are: • System 7.xWindows 98Windows CE • Multi-user - A multi-user operating system allows for multiple users to use the same computer at the same time and different times. See the multi-user definition for a complete definition. Examples of operating systems that would fall into this category are: • LinuxUnixWindows 2000 • Multiprocessing - An operating system capable of supporting and utilizing more than one computer processor. Examples of operating systems that would fall into this category are: • LinuxUnixWindows XP • Multitasking - An operating system that is capable of allowing multiple software processes to run at the same time. Examples of operating systems that would fall into this category are: • LinuxUnixWindows 8 • Multithreading - Operating systems that allow different parts of a software program to run concurrently. Examples of operating systems that would fall into this category are: • LinuxUnixWindows XP

  23. Linux vs. Windows Users who are considering making a change from Windows to Linux or Linux to Windows commonly want to know the advantages and disadvantages of each of the operating systems.

  24. GNU/Linux operating systems have a steeper learning curve for the average user. They frequently require a deeper understanding of the underlying system to perform day-to-day functions. Additionally, troubleshooting technical issues can be a more intimidating and complicated process than on Windows. However, some distributions such as Ubuntu and Linux Mint are designed specifically to ease the transition from Windows to a Linux environment. Ease Of Use

  25. Windows is one of the easiest desktop operating systems to use. One of its primary design characteristics is user friendliness and simplicity of basic system tasks. Its ease lack of difficulty is considered a positive by users who want their system to just work. However, more proficient users may be frustrated by oversimplification of system tasks at the expense of fine-grained control over the system itself. Ease Of Use

  26. Command line vs. GUI Users who are not familiar with a command line interface (CLI) or graphical user interface (GUI) may want to know the pros and cons of each to help determine what works best for them. Others may be curious about differences between the two.

  27. Although many command line environments are capable of multitasking, they do not offer the same ease and ability to view multiple things at once on one screen. Multitasking GUI users have windows that enable a user to view, control, manipulate, and toggle through multiple programs and folders at same time.

  28. Command line users only need to utilize a keyboard to navigate the interface, often resulting in faster performance. Speed While modern GUIs are faster and more efficient than ever before, taking your hand off the keyboard to move the mouse(or touchpad) is slower than using a command line interface for many users.

  29. A command line interface mostly requires users to already know scripting commands and syntax, making it difficult for new or novice users to create scripts. Scripting Creating scripts using a GUI has become much easier with the help of programming software, which allows users to write the scripts without having to know all the commands and syntax. Programming software provides guides and tips for how to code specific functions, as well as preview options to see if and how the script will work.

  30. When accessing another computer or device over a network, a user can manipulate the device or its files with a command line interface. However, you must know the commands to do so and is not as easy for new or novice users. Remote access Remotely access another computer or server is possible in a GUI and easy to navigate with little experience. IT professionals typically use a GUI for remote access, including the management of servers and user computers Note:Overall, a GUI is used by more users today than a CLI. Dedicated and hard core programmers may lean towards using a CLI for efficiency and speed, but the GUI is more user friendly and preferred by most users.

  31. THANK YOU

More Related