CS UNIT 5

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

Why do computers need an operating system?

An operating system provides the environment for applications to run and acts as a usable interface between humans and the computer, hiding the complexity of computer hardware.

Explain the role of memory management in an operating system.

Memory management controls the computer's main memory, optimizing memory use, organizing how memory is allocated, and protecting memory to prevent conflicts between applications.

Describe the function of security management in an operating system.

Security management ensures the integrity, confidentiality, and availability of data. This includes OS updates, antivirus software, firewalls, user privileges, and data recovery methods.

Explain the role of device drivers in hardware management.

<p>Device drivers communicate with the operating system and translate data into a format understood by the specific input/output device, enabling the OS to interact with hardware.</p>
Signup and view all the answers

What is the purpose of a disk formatter utility?

<p>A disk formatter prepares a disk for data storage and retrieval by organizing the storage space into partitions and writing directory data.</p>
Signup and view all the answers

Describe how antivirus software uses heuristic checking.

<p>Heuristic checking analyzes software for behavior that could indicate a possible virus, which is useful for detecting new or unknown viruses.</p>
Signup and view all the answers

Explain the function of disk defragmentation software.

<p>Disk defragmentation software rearranges data on a hard disk to store files in contiguous sectors, reducing read-write head movements and improving data access time.</p>
Signup and view all the answers

What is the purpose of disk content analysis software?

<p>Disk content analysis software checks disk drives for empty space and disk usage by reviewing files and folders, helping users to optimize disk space.</p>
Signup and view all the answers

Explain the importance of backing up files and describe three versions for total security.

<p>Backing up files helps prevent data loss. Three versions for security: current version on internal HDD, a locally backed up copy, and a remote back-up version stored away from the computer.</p>
Signup and view all the answers

How do program libraries aid in software development?

<p>Program libraries contain pre-written and tested routines that can be freely accessed by software developers for use in their own programs, thus saving considerable development time and cost.</p>
Signup and view all the answers

Describe the use of Dynamic Link Library (DLL) files in software development.

<p>DLL files are library routines that can be linked to another program only at the run time stage, so these subroutines must be available at runtime and stand-alone files, reducing executable size of main program.</p>
Signup and view all the answers

Explain the difference between static and dynamic program libraries.

<p>In a static library, software is linked to the executable code in the library at the time of compilation; in dynamic libraries, software is linked to the library routines only at run time.</p>
Signup and view all the answers

What are some advantages of using DLL files?

<p>DLLs remove the need to rewrite routines, save memory because they are loaded at run time, and allow for independent changes that don't require recompilation of the main program.</p>
Signup and view all the answers

State a limitation related to the use of DLL files.

<p>The executable code is not self-contained, so all DLL files need to be available at run time, and if any have changed, it could cause issues to running the main program.</p>
Signup and view all the answers

What is the purpose of a translator in the context of computer programming?

<p>A translator is system software used to convert a source program written in any language other than machine code into a form that the computer can execute.</p>
Signup and view all the answers

What is the role of an assembler?

<p>An assembler translates programs written in assembly language into machine code for direct execution or storage for later use.</p>
Signup and view all the answers

Explain the difference between a compiler and an interpreter.

<p>A compiler translates the entire source program into machine code or object code, while an interpreter analyses and executes the program line by line.</p>
Signup and view all the answers

Describe the process of partially compiling and interpreting code.

<p>With partial compilation: source code is translated into a machine-independent intermediate code (such as bytecode); this bytecode can be interpreted by an interpreter or compiled using a compiler.</p>
Signup and view all the answers

What is an Integrated Development Environment (IDE)?

<p>An IDE is a suite of programs used to write and test computer programs written in a high-level programming language: it integrates source code editing, compiling/interpreting, and debugging into a single environment.</p>
Signup and view all the answers

List at least three common features found in most IDEs.

<p>Most IDEs have a source code editor, a compiler or interpreter (or both), a run-time environment with a debugger, and an auto-documenter.</p>
Signup and view all the answers

Explain the purpose of syntax highlighting in a source code editor.

<p>Syntax highlighting color-codes different words in the program and layout the program in a meaningful way, , making the code easier to read and understand, which helps in identifying errors during coding.</p>
Signup and view all the answers

What is dynamic syntax checking and how does it help in programming using an IDE?

<p>Dynamic syntax checking finds possible syntax errors as the program code is entered and alerts the programmer, enabling correction of errors during programming.</p>
Signup and view all the answers

Explain the role of a debugger in an IDE.

<p>The debugger helps find errors during the program development using options to step through the code line by line. The code execution pauses for variable and expression review.</p>
Signup and view all the answers

In the context of operating systems, what is 'process management'?

<p>Process management involves the allocation of resources to running programs, allowing all processes to be fully synchronized (scheduling of resources, resolution of software conflicts, use of queues etc.).</p>
Signup and view all the answers

What advantages does a Graphical User Interface (GUI) offer over a Command Line Interface (CLI)?

<p>GUI uses pictures/symbols(icons) to interact with the computer. This replaces potentially complex CLI commands and offers an alternative to needing to type and remember those commands.</p>
Signup and view all the answers

What is 'memory protection' and why is it needed?

<p>Memory protection ensures that two competing applications cannot use the same memory locations at the same time. It is required so that data is not lost due to applications overwriting each other's memory.</p>
Signup and view all the answers

Explain the actions and purpose of a 'keyboard manager'.

<p>A keyboard manager handles the tasks when a user types text. It reads the data using buffers storing data temporarily. The key presses form a queue of inputs that are then processed.</p>
Signup and view all the answers

Explain an example error that could produce a hard bad sector.

<p>Hard bad sectors are often caused by damage to the disk surface due to allowing the read-write head to touch surface (e.g. without first parking it).</p>
Signup and view all the answers

What are common means of initiating virus checking by a virus checker, and why are both of these options important?

<p>Checking files before they are run and heuristic checking are common checking methods. The former avoids viruses from being run, wherease the latter detects new viruses not on the database.</p>
Signup and view all the answers

Outline why some files and programs are put into quarantine.

<p>Putting files and programs which may be infected into quarantine means that the virus can be deleted automatically. The user is also able to choose whether to delete the file, and they may know that the file is a false positive.</p>
Signup and view all the answers

Briefly outline Time Machine's backup methodology.

<p>Time Machine takes snapshots of files to an external HDD at regular intervals over time building a past versions library. The library stores the data by deleting the oldest backups to make room for the newest.</p>
Signup and view all the answers

Why does slow data access time occur when the HDD becomes full, and how does this impact the read-write head?

<p>As an HDD becomes full, scattered blocks all over the surfaces means that for files to be read, the HDD read-write head requires several movements to retrieve all data for a single file.</p>
Signup and view all the answers

Briefly explain how disk compression may have been used to increase disk storage, compared to modern drives.

<p>Disk data is compressed before writing it to the hard drive, anddecompressed again when reading it. All other OS routines will need disk access and are overridden, and data previously saved would be unreadable if uninstalled.</p>
Signup and view all the answers

What are some features and advantages that IDEs offer?

<p>IDEs often feature: a source code editor; a compiler, interpreter, or both; a run-time environment with a debugger; an auto-documenter. The source code editor means that the editor can be coded without a text editor and its integration speeds up the development process.</p>
Signup and view all the answers

The user has accidentally deleted some files from the hard disks, how can they recover these missing files?

<p>By restoring the data, files or computer from the back up is useful. This resolves the issues and the user gets the files he needs.</p>
Signup and view all the answers

During the usage of the computer, some unexplained messages and advertisement start appearing on the screen, what may be the reason?

<p>The user suspects that it is malware and to remove it, the user may leverage anti malware tools and virus checker application.</p>
Signup and view all the answers

While using the applications, one of the files on the HDD gets corrupted and the performance of the computer gets affected due to it, how can a user resolve this?

<p>Data blocks become damaged due to several read/write operations, disk formatted needs to be run so that those data blocks are not used.</p>
Signup and view all the answers

Distinguish between a command line interface and graphical user interface.

<p>A CLI requires a user to type instructions to perform actions, and a GUI allows user to interact via pictures and symbols (icons).</p>
Signup and view all the answers

Flashcards

Operating System

Software that provides an environment for applications to run and interfaces hardware with users.

Memory Management

Controls main memory, optimizing allocation, organization and protection for running applications.

Security Management

Part of the OS that ensures data integrity, confidentiality, and availability through various security measures.

Hardware Management

Controls all input/output devices connected to a computer using device drivers.

Signup and view all the flashcards

Process Management

Allocates resources and synchronizes processes, enabling efficient data sharing and exchange

Signup and view all the flashcards

Disk Formatter

Software that prepares a disk for storing and retrieving data/files.

Signup and view all the flashcards

Bad Sector

A faulty sector on a hard drive, categorized as either hard (physical) or soft (logical).

Signup and view all the flashcards

Antivirus Software

Software that quarantines and deletes files or programs infected by malware; can run in background or by user initiation.

Signup and view all the flashcards

Heuristic Checking

Checking the software for behavior that indicates a possible virus

Signup and view all the flashcards

Quarantine

Identifies file/program as virus-infected, isolating it before deletion.

Signup and view all the flashcards

False Positive

File or program identified as infected, but the user knows it is not correct

Signup and view all the flashcards

Disk Defragmenter

Utility that reorganizes hard disk sections, storing files in contiguous data blocks.

Signup and view all the flashcards

Disk Content Analysis Software

Utility that checks drives for space and usage.

Signup and view all the flashcards

Disk Compression

Software that compresses data before storage.

Signup and view all the flashcards

Back-up Utility

Software for creating copies of files on another device.

Signup and view all the flashcards

Program libraries

Pre-written subroutines that save development time for programmers when developing software

Signup and view all the flashcards

Dynamic Link File (DLL)

Library routine linked to new program code only during run-time stage

Signup and view all the flashcards

Translator

Systems software used to translate source programs into machine code.

Signup and view all the flashcards

Compiler

Computer program translating a high-level language source program into machine code or p-code.

Signup and view all the flashcards

Interpreter

Computer program analyzing/executing a high-level language program line by line.

Signup and view all the flashcards

Prettyprinting

Printing well set out and formatted source code, making it easier to read and understand.

Signup and view all the flashcards

IDE

Suite of programs used to write and test a computer program in a high-level language.

Signup and view all the flashcards

Syntax Error

Error in the grammar of a source program.

Signup and view all the flashcards

Logic Error

Error in the logic of a program.

Signup and view all the flashcards

Debugging

Finding logic errors in a program by running/tracing it.

Signup and view all the flashcards

Single Stepping

Running a program one line/instruction at a time.

Signup and view all the flashcards

Breakpoint

A break to pause execution for debugging.

Signup and view all the flashcards

Report Window

During debugging, shows contents of variables.

Signup and view all the flashcards

Study Notes

  • Software that manages computer hardware resources and provides services for application programs
  • Forms a platform for running applications, acting as an intermediary between the user and the hardware

Operating System (OS) Needs

  • Early computers lacked OS, requiring manual loading of control software via paper tape or punched cards
  • Modern computers use BIOS (Basic Input/Output System) stored on a flash memory chip on the motherboard to initiate start-up
  • OS is loaded into RAM (Random Access Memory) due to its large size; not fully loaded at once to optimize performance
  • An OS provides an environment for applications to run, a user-friendly interface and abstracts the complexity of hardware

Interfaces

  • HCI (Human-Computer Interface) facilitates interaction; GUI (Graphical User Interface) and CLI (Command-Line Interface) are common types
  • CLI requires users to type commands, necessitating knowledge of commands and syntax
  • GUI uses icons and visual elements for interaction, simplifying tasks
  • WIMP (Windows, Icons, Menus, Pointing devices) was an early GUI environment.
  • Post-WIMP interfaces incorporate touch screen technology, supporting actions like pinching and rotating

OS Tasks - Memory Management

  • Composed of memory optimization, organization, and protection
  • Optimizes memory allocation/deallocation during simultaneous application runs, tracking allocated and free memory; swaps data between RAM and storage to maintain optimization
  • Includes single contiguous allocation, partitioned allocation, paged memory (fixed-size partitions used by virtual memory systems) and segmented memory (non-contiguous blocks)
  • Memory protection prevents applications from using same memory locations simultaneously, avoiding data loss or crashes

Security Management

  • Ensures integrity, confidentiality, and availability of data through OS updates, antivirus software, firewalls and user privileges
  • Access rights management, data recovery mechanisms and prevention of illegal intrusions are included

Process Management

  • Manages allocation of resources allowing processes to synchronize

Hardware Management

  • Manages all I/O devices through device drivers
  • Translates data, sets priorities for hardware resources and manages queues and buffers (e.g. Printer management includes loading printer driver, sending data to printer buffer/queue, sending control commands, and handling errors)

File Management

  • Defines file naming conventions, specific tasks (create, open, delete, etc.), directory structures and access control mechanisms
  • Includes specifying logical file storage format (FAT, NTFS) and memory allocation

Utility Software

  • Programs provided with OS or installed separately (initiated by user; some run in background)

Disk Formatter Utility

  • Initializes new HDDs, organizes storage space into partitions, and writes directory data and tables of content

Antivirus Software Utility

  • Protects from virus attacks by checking files, comparing against virus database, heuristic checking (identifying potentially malicious behavior), quarantining infected files
  • Requires regular updates due to new viruses

Defragmentation Software Utility

  • Reorganizes sectors on HDD to store files in contiguous blocks, reducing read-write head movements and improving data access time

Disk Content Analysis Software Utility

  • Checks disk drives for empty space and disk usage by reviewing files and folders, assisting in removal of unwanted files

Disk Compression Utility

  • Compresses data before storage; decompresses when reading

Backup Software Utility

  • Schedules file backups to external devices or cloud storage; includes data recovery, restore points and automated backups to chosen devices

Program Libraries

  • Collections of pre-written routines for use in software development, saving time and cost
  • Static Libraries: software is linked to executable code in the library at compilation (embedded directly)
  • Dynamic Libraries: link to the routines at run time, called dynamic link library files (DLL)

DLL Pros

  • Smaller executable code in the main program
  • DLL files can be changed independently

DLL Cons

  • Executable code is not self-contained
  • Requires DLL linking software

Language Translators

  • System software that translates source code into machine code

Assembler Translator

  • Translates assembly language into machine code

Compiler Translator

  • Translates high-level languages into machine code.

Interpreter Translator

  • Directly executes high-level languages line by line.

Pros of Compiling

  • Faster execution, no syntax errors

Cons of Compiling

  • Difficult to debug, potential crashes

Pros of Interpreting

  • Easier to debug, no crashes

Cons of Interpreting

  • Slower execution, source code is not protected

Partial compiling and Interpreting

  • Source code is checked and translated by a compiler into object code
  • The compiled object code is a low-level machine independent code, called intermediate code, p-code or bytecode
  • To execute the program, the object code can be interpreted by an interpreter or compiled using a compiler.

Integrated Development Environment (IDE)

  • Aids program writing and development with source code editor; compiler, interpreter, and a debugger
  • A source code editor allows a program to be written and edited without the need to use a separate text editor

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Operating System: Short Questions
24 questions
GUI Operating Systems
8 questions
Besturingssystemen en Interfaces
13 questions
CLI, GUI, Plug and Play, APIs, User Accounts
40 questions
Use Quizgecko on...
Browser
Browser