OPERATING SYSTEM PART ||

Cards (56)

  • Program – a set of instructions that tells the computer what to do.
    Software – a set of interrelated programs.
  • Types of Software
    1. System software – used to manipulate the basic operations of a computer system.
    2. Application software – used to accomplish specialized tasks for computer users.
  • Types of application software
    1. Document production software
    2. Spreadsheet software
    3. Presentation software
    4. Database management software
    5. Business software
    6. Multimedia software
    7. Entertainment software
    1. Document production software – used to compose, edit, print, and electronically published documents.
  • 2. Spreadsheet software – used to create and manipulate spreadsheets electronically for analysis, planning, and modeling.
  • 3. Presentation software – used to create and display information in the form of slide shows.
  • 4. Database management software – used to store, modify, and retrieve information from a database in an organized and structured manner
  • 5. Business software – can provide users with tools for business management.
  • 6. Multimedia software – can manipulate pictures, sound, and video.
  • 7. Entertainment software - an refer to video games, screen savers, programs to display motion pictures or play recorded music, and other forms of entertainment which can be experienced through use of a computing device.
  • System programming – the act of developing system software.
  • Types of programming languages
    1. Machine language – the natural or primitive language that the computer actually understands.
    2. Low-level language/assembly language – uses abbreviations or mnemonics in place of binary patterns.
    3. High-level language – uses English-like commands.
  • Types of system programs
    1. Operating Systems
    2. Language translators
    3. Linkers and loaders
  • Operating Systems – set of programs that are required for providing interface between the different applications and hardware of the computer systems or mobile phones.
  • 2. Language translators – convert a high-level language program/assembly language program into machine language
    a. Assemblers
    b. Compilers
    c. Interpreters
  • 3. Linkers and loaders
    1. Linker – a system that combines or links the modules together with the libraries which then form a single executable program called load module.
    2. Loader – responsible for bringing the load module to the main memory for execution.
  • Address binding – the process of assigning or mapping symbolic references to actual memory locations.
    Physical address/absolute address – the actual main memory location
  • Techniques in placing the load module in the main memory
    1. Absolute loading – the load module has actual memory addresses assigned instead of symbolic variables.
    2. Relocatable loading – address binding is performed right before the load module is loaded and the address assignment was based on the available main memory location at that time.
    3. Dynamic run-time loading – the absolute address is not generated when loaded, but only when it is needed by the CPU.
  • Operating System – a system software that allows users or the application programs they are using to interact with the computer hardware in an easy and convenient manner.
  • Major functions of an OS
    1. It creates a virtual machine interface between the user/application program and the hardware.
    2. It acts as the computer’s resource manager or resource allocator. a. Important resources managed by the OS ( CPU, Main memory I/O devices)
    3. It functions as the program launcher
  • Main goals of the OS
    1. It should make the computer easy and convenient to use.
    2. It should manage the resources of the computer system to make them more efficient.
    3. It should execute and control programs.
  • Bootstrap program – stored in the computer’s Read-Only Memory (ROM) and is executed upon power on.
    Boot Block Loader – locates the OS and loads it in the main memory.
  • Two parts of OS
    1. Kernel – the heart and soul of the OS; directly controls the computer system hardware and performs the services of the OS.
    2. Shell (Command Interpreter) – part of the OS that serves as the interface between users and the kernel.
  • Types of shell
    1. Command-Line Interface (CLI) – requires users to type the commands at a prompt; requires knowledge of commands and proper instruction formulation.
    2. Graphical User Interface (GUI) – requires users to enter commands by either using drop-down menus or by clicking on icons using a mouse pointer.
  • Services provided by the OS
    1. Program execution.
    2. Access to I/O devices
    3. File System Management.
    4. System Access.
    5. Error handling.
    6. Communication.
    1. Program execution - The OS locates a program in the secondary storage, loads it in the memory and executes it.
  • 3. File System Management - Access to files in secondary storage is provided by the OS.
  • 4. System Access - The OS prevents unauthorized access to the computer system which is useful especially in a computer system with multiple users
  • 5. Error handling - When an error is encountered, the OS may:
    1. Retry the operating that caused the error.
    2. Terminate the program that caused the error.
    3. Report the error to the user and let the user take the necessary remedial action
  • 6. Communication - The OS is responsible for facilitating communication among processes.
  • Core components of an OS
    1. Process manager (Process scheduler/CPU scheduler) – responsible for determining which among the programs will execute first and determine runtime duration.
    2. Memory manager – handles memory allocation and monitor which memory areas are in use and which are free or available.
    3. File manager – organizes and presents files stored in the secondary storage for easy access.
    4. I/O manager – grants the user requests to use the I/O devices and resolves, conflict issues when two or more programs access a device at the same time.
  • History of OS
    1. First Generation – Serial Processing
    2. Second Generation – Batch Processing
    3. Third Generation – Multiprogrammed Systems
    4. Fourth Generation – Time-Sharing Systems
  • First Generation – Serial Processing
    1. Computers were massive, expensive, slow, and very primitive.
    2. They have no OS, so there were “bare” machines.
    3. They can only be used by one person at a time.
    4. There were no keyboards during this time so user commands are entered by using toggle switches.
  • First Generation – Serial Processing
    5. There were no fixed or hard disks.
    6. High-level programming languages were developed and entered into the computer by using punched cards.
    1. Punched cards – thin cardboards with little square holes that represent information.
    2. Punched card reader – used to read the punched cards which generate the electronic form of the program, and load it into the main memory for compilation.
    3. C. Keypunch – looks like a typewriter that is used to puncture holes in the punched cards.
  • 2. Second Generation – Batch Processing
    1. Batch processing – similar jobs were grouped and processed together as a batch.
    2. Control cards – contain information or instructions on how the job following it should be performed by the computer.
    3. Monitor – a system software that interprets the instructions contained in the control cards.
    4. Automatic job sequencing – ensures that when a job has finished executing, the next job automatically starts
  • Third Generation – Multiprogrammed Systems
    1. Job Scheduling – performed wherein the OS selects which among the programs will be loaded in the main memory.
    2. CPU Scheduling – performed wherein the OS selects which among the programs should be executed first
  • Fourth Generation – Time-Sharing Systems
    1. The CPU is assigned to user or process for a time period (also called time slice or time quantum) by the OS.
  • Types of Computer Systems and their OS
    1. Personal computer systems
    2. Multiprocessor systems
    3. Networked and Distributed Systems
    4. Real-time systems
    5. Handheld systems
  • Personal computer systems
    1. These were single-user systems only.
    2. The microprocessors do not have the necessary hardware support to provide protection to processes.
    3. OS focused on improving user-friendliness and response time.
  • Multiprocessor systems
    1. It contains two or more CPUs b. Kinds of multiprocessor systems
    2. Symmetric multiprocessor (SMP)/Shared memory multiprocessors – has identical processors sharing a common memory.
    3. B. Assymmetric multiprocessor (AMP)/Distributed memory multiprocessors – each processor has its own memory, thus specific tasks are assigned to each processor.