Wk 1 computer

Subdecks (3)

Cards (121)

  • Computer system software
    Sets of instructions written to drive/run the hardware
  • Types of Software
    • System Software
    • Application Software
  • Types of Software
    • System Software: Operating System (OS)
    • Application Software: Various specific examples
  • System Software
    Contributes to the control and performance of the computer system
  • System Software
    Designed to run a computer’s hardware and application programs
  • System Software
    Collection of suites of programs written by the computer manufacturer to control and enhance the performance of the computer
  • Types of System Software
    • Operating System (OS)
    • Computer Language Translator
    • Utilities Programs
  • Operating System (OS)

    Set of instructions designed to efficiently manage the resources of the computer system
  • Operating System (OS) performs services for applications
    Determines which applications should run in what order, manages sharing of internal memory, handles input and output to and from attached hardware devices
  • Operating system
    1. Determines which applications should run in what order and how much time should be allowed for each application before giving another application a turn
    2. Manages the sharing of internal memory among multiple applications
    3. Handles input and output to and from attached hardware devices, such as hard disks, printers, and dial-up ports
    4. Manages how to divide the program so that it runs on more than one processor at a time
    5. Sends messages to each application or interactive user (or to a system operator) about the status of operation and any errors that may have occurred
  • Types of Operating System
    • Single user Operating System
    • Multiple user Operating System
  • Single user Operating System
    Makes the computer system available to only one user at a time
  • Single user Operating System
    • DOS (Disk Operating System), Macintosh Operating System, Apple DOS, Windows Operating System
  • Multiple user Operating System
    Designed to be shared by many users
  • Computer Language Translator
  • A programming language is a set of notations in which computer programs are expressed
  • The only language a computer understands is machine language using the binary system (0’s and 1’s)
  • Translators
    • Assembler
    • Interpreter
    • Compiler
  • Utility Software
    System software designed to help analyze, configure, optimize, or maintain the operation of a computer, its devices, or its software
  • Utility Software
    • Disk utilities like defragmenters, compressors, cleaner, antivirus programs, registry cleaners, Screen saver, file viewer (windows explorer), editors, system restoration programs
  • Utility software is built into the computer operating system, however, may be installed separately
  • Translator
    Highly developed programs capable of converting high-level language to machine language, low-level language to machine language
  • Translator
    Computer program that performs the translation of a program written in a given programming language into a functionally equivalent program in a different computer language without losing the functional or logical structure of the original code
  • Types of Translator
    • Assembler
    • Compiler
    • Interpreter
  • Assembler
    Translates assembly language into machine code
  • Assembler
    Used to translate the program written in assembly language into machine level language
  • Example for Assembler Translator
    • FAP
    • Fortran Assembly Program
    • MAP
    • Macro Assembly Program
  • Advantages of using Assembler
    • Very fast in translating assembly language to machine code as 1 to 1 relationship
    • Assembly code is often very efficient because it is a low-level language
    • Assembly code is fairly easy to understand due to the use of English-like mnemonics
  • Disadvantages of using Assembler
    • Assembly language is written for a certain instruction set and/or processor
    • Assembly tends to be optimized for the hardware it’s designed for, meaning it is often incompatible with different hardware
    • Lots of assembly code is needed to do relatively simple tasks, and complex programs require lots of programming time
  • Compiler
    Capable of converting high-level language to machine language directly
  • Compiler
    Computer program that translates code written in a high-level language to a lower-level language, object/machine code
  • Compiler
    Reads the complete source program written in high-level language, converts it into machine level language if error-free
  • Compiler
    Specifies errors at the end of compilation if there are any errors in the source code
  • Example for Compiler Translator
    • GCC
    • GNU compiler Collection
    • COBOL
    • Common Business Oriented Language
  • Advantages of Using a compiler
    • Efficiency: Compiled code tends to be more efficient in terms of execution speed compared to interpreted code
    • Performance Optimization: Compilers can perform various optimizations during the compilation process
    • Portability: Compiled code is often more portable than source code
  • Compiler
    • Dead code elimination can lead to improved performance
  • Compiler
    • Portability: Compiled code is often more portable than source code
  • Compiler
    • Code Protection: Compiled code can be more challenging to reverse engineer compared to interpreted code
  • Compiler
    • Error Checking: Compilers perform extensive static analysis on the source code, catching many types of errors before the program is executed
  • Disadvantages of Using a compiler