system software

Cards (44)

  • System software
    The type of computer program that provides a platform for running application software and manages computer hardware resources
  • Types of system software
    • Operating system
    • Utility software
    • Program library
    • Language translator
    • IDE
  • Operating system
    • Provides a user system interface
    • Provides a program hardware interface
    • Manages resources
    • Manages memory
    • Manages devices
    • Manages files
    • Provides security management
    • Provides error detection and recovery
  • User system interface
    Interface that enables user to make the software and Hardware perform meaningful task
  • Types of user interface
    • Graphical user interface
    • Command line interface
  • Program hardware interface
    Manages Hardware allocation for software to effectively utilize Hardware capabilities
  • Resource management
    Allocates RAM and processing power to each process
  • Memory management
    • Ensures no two processes attempt to use the same memory location
    • Selects memory organization scheme
    • Optimizes memory usage
  • Device management
    Handles installation of appropriate device drivers
  • File management
    • Provides file naming convention
    • Controls directory structure
    • Provides access control mechanism
  • Security management
    • Handles data recovery
    • Prevents intrusion by installing antivirus and anti-hacking software
    • Ensures data privacy by encrypting data
  • Error detection and recovery
    • Capable of pausing ongoing process and offering error diagnostic
    • Able to systematically shut down system without data loss
  • Utility software
    Software designed to perform specific task to maintain overall functionality and maintenance of a computer system
  • Hard disk formatter and checker
    • Erases all data
    • Establishes file system using directory
    • Divides disk into logical drives
  • Defragmenter
    Organizes hard disk data to improve performance and speed
  • Backup software
    Creates duplicate copies of files and data that can be used to restore original data
  • File compression
    Compresses files without affecting data performance
  • Virus tracker
    Scans and detects malicious software to ensure security
  • Program library
    Also called subroutine, frequently used code that can be reused by other programmers
  • Program library allows programmers to use existing code instead of writing from scratch
  • System software runs continuously to check whether there is any malicious software that is on your computer running, and if that's the case they will stop the process and even warn you if necessary
  • Utility software
    Software that enhances the functionality of a computer to make sure that you have a good experience using them
  • Types of system software
    • Operating system
    • Utility software
  • Program library
    Also called subroutine, it is a collection of pre-written code that can be used by other programmers to reduce time and effort
  • Subroutines are designed for specific operations written by some good programmer, and then if other programmers want to use it they can integrate it into their own code</b>
  • Source code will eventually be converted into machine code because this is the only language that a computer can understand
  • Executable code cannot run independently and must be linked with any utilized subroutine code
  • Dynamic link library (DLL)
    A collection of executable functions and procedures that can be dynamically loaded and accessed by a program at runtime, reducing storage space and memory usage
  • Advantages of DLL
    • Executable code only requires a small code inclusion
    • New version of the routine can be loaded into memory automatically upgrading any program using it
  • Disadvantages of DLL
    • Sometimes required library is not available or incompatible
    • Performance can be affected due to the need for runtime linking
  • Translator
    Software that converts human readable code into machine readable code
  • Types of translators
    • Interpreter
    • Compiler
  • How interpreter works
    1. Translates and executes high level code line by line during execution
    2. If an error is detected, it is reported and the interpreted program will stop execution
    3. If no error, the source code line is transformed into an intermediate code
    4. The interpreter program employs this intermediate code to perform the necessary operation
  • How compiler works
    1. Translates the entire high level code into machine code all at once
    2. If an error is detected, it is recorded but the program doesn't stop
    3. If no errors, the source code line is transformed into an intermediate code
    4. The entirety of the intermediate code is then translated into object code which can be executed
  • Advantages of interpreter for programmer
    • Identifier errors can be recognized in real time and promptly rectified
    • Disadvantage is that sections of code with syntax errors might remain inaccessible
  • Advantages of compiler for programmer
    • Executable file can be distributed to users without giving them access to the source code
  • Disadvantages of interpreter for programmer
    • Source code has to be distributed to the user
  • Disadvantages of compiler for programmer
    • Requires more time for the initial development
  • Advantages of compiler for user
    • Execution speed is faster than interpreter code
    • Only the object code has to be available each time an error-free program is run
  • Disadvantages of compiler for user
    • Executable code could contain a virus