Chapter #1 – Computer System
Exercise Solutions
1. Name the software required to make a computer functional. Write down its two primary services.
The software required to make a computer functional is the System Software. Examples of System Software include Operating System (OS), System Utilities, Device Drivers etc
Two primary services of System Software are given below:
1. Provide platform for building and running application programs.
2. Provide a user interface (UI) that allows users to interact with the computer. This UI acts as a software component of the OS, enabling users to input commands and receive information.
2. How does the computer understand a program written in high level language?
Source code, written in high-level languages, is translated into machine-readable object code by various types of translators. The three main types of translators are:
Assembler: Converts assembly language into machine code specific to a microprocessor. The resulting machine code is not portable across different systems.
Compiler: Translates high-level language source code into machine code all at once. If the code is syntactically correct, it can be executed without needing the compiler again.
Interpreter: Translates and executes high-level language code line by line in real-time. It requires the interpreter each time the source code is run, as it does not produce a separate executable file.
Each translator plays a distinct role in converting human-readable code into machine-executable instructions, facilitating software development and execution.
3. Why is the execution time of the machine code less than that of source code?
The execution time of machine code is less than that of source code for several reasons:
Direct Execution: Machine code is in binary format, allowing the CPU to execute it directly, while source code requires translation first.
Resource Utilization: Machine code is designed to utilize CPU resources more effectively. It operates closer to the hardware level, allowing for better optimization regarding how instructions are executed and how memory is accessed, further reducing execution time compared to higher-level source code
These factors lead to faster execution times for machine code compared to source code
4. What is the need of RAM? How does it differ from ROM?
Need for RAM
RAM (Random Access Memory) is crucial for a computer's performance as it provides temporary storage for data and instructions that the CPU needs for active tasks, enabling quick access and efficient multitasking.
Differences between RAM and ROM
Volatility: RAM is volatile (loses data when power is off), while ROM (Read-Only Memory) is non-volatile (retains data without power).
Usage: RAM stores temporary data for running applications; ROM stores permanent instructions, like firmware.
Modifiability: RAM can be easily modified; ROM is primarily read-only.
Speed and Capacity: RAM is faster and typically larger than ROM, which is slower and smaller.
These distinctions clarify the different functions of RAM and ROM in a computer system.
5. What is the need for secondary memory?
Secondary memory is essential for several reasons:
Permanent Storage: Unlike primary memory (RAM), which is volatile and loses data when power is off, secondary memory retains data permanently, ensuring important information is not lost.
Large Capacity: Secondary memory offers significantly more storage space than primary memory, allowing users to store large amounts of data, such as files, applications, and media.
Backup and Recovery: It serves as a crucial component for data backup and recovery strategies, protecting against data loss due to system failures or disasters.
Data Transfer: Some secondary storage devices are portable, enabling easy transfer of data between different systems.
Overall, secondary memory complements primary storage by providing non-volatile, large capacity storage that is essential for data retention and management.
6. How do different components of the computer communicate with each other?
Data transfer between different components of a computer system occurs via physical connections known as buses. There are three main types of buses:
Data Bus: Transfers data between components and is bidirectional.
Address Bus: Carries addresses from the CPU to memory, indicating where data should be read from or written to; it is unidirectional.
Control Bus: Communicates control signals between components, also unidirectional.
Together, these buses form the system bus, which facilitates communication between the CPU, main memory, and input/output devices. When the CPU needs to read or write data, it uses the address bus to specify the memory location and the control bus to indicate whether it is performing a read or write operation. The data bus then carries the actual data to or from the specified location. The memory controller manages this flow of data, ensuring that operations are executed correctly.
8. What is the primary role of system bus? Why is data bus is bidirectional while address bus is unidirectional?
The primary role of the system bus is to enable communication between the CPU, memory, and I/O devices.
The data bus is bidirectional because it allows data to flow both to and from the CPU, enabling read and write operations. In contrast, the address bus is unidirectional as it only carries addresses from the CPU to memory or I/O devices, indicating where data should be accessed or stored.
9. Differentiate between proprietary software and freeware software. Name two software for each type.
Proprietary Software: Owned by an individual or company; users must purchase a license to use it, and the source code is not available. Examples:
Microsoft Windows, Adobe Photoshop
Freeware Software: Available for free use but typically does not allow modification of the source code; may lack support. Examples:
Mozilla Firefox, VLC Media Player
In summary, proprietary software requires payment and restricts access, while freeware is free but may not allow modifications.
10. Write the main difference between microcontroller and microprocessor. Why do smart home appliances have a microcontroller instead of microprocessor embedded in them?
A microprocessor is a small electronic component in computers that performs basic arithmetic and logical operations on data. In contrast, a microcontroller is a compact computing device that integrates a CPU, fixed RAM, ROM, and other peripherals on a single chip, designed for specific control tasks in embedded systems.
Microcontrollers typically include components such as:
CPU: Executes instructions and controls operations.
Memory: Comprises program memory (ROM) for storing firmware and data memory (RAM) for temporary data.
I/O Peripherals: Allow interaction with external devices, including digital and analog inputs/outputs.
Microcontrollers are preferred in embedded systems due to their low power consumption, compact size, cost-effectiveness, and integration of necessary components, making them ideal for applications like smart home appliances.
11. Mention the different types of data that you deal with while browsing the Internet.
While browsing the Internet, you typically deal with three different types of data:
Structured Data: Highly organized and easily searchable, such as transactions and user profiles.
Unstructured Data: Lacks a specific format, including emails, social media posts, videos, and web pages.
Semi-structured Data: Contains tags or markers to separate elements but does not have a formal structure. Examples include - e-mails, HTML pages, CSV files etc
These data types play crucial roles in how information is processed and presented online.
12. Categorise the following data as structured, semi structured and unstructured:
- Newspaper
- Cricket Match Score
- HTML Page
- Patient records in a hospital
Here’s the categorization of the provided data:
Newspaper | Unstructured Data – Contains text and images without a predefined format. |
Cricket Match Score | Structured Data – Organized in a clear format, often tabular, making it easily searchable. |
HTML Page | Semi-structured Data – Uses tags to define elements but does not have a strict structure like databases. |
Patient Records in a Hospital | Structured Data – Typically organized in a standardized format for easy access and management. |
13. Name the input or output device used to do the following:
To output audio: | Speakers |
To enter textual data: | Keyboard |
To make a hard copy of a text file: | Printer |
To display the data or information: | Monitor |
To enter audio-based commands: | Microphone |
To build 3D models: | 3D Printer |
To assist a visually-impaired individual in entering data: | Braille Keyboard or Screen Reader |
14. Identify the category (system, application, programming tool) of the following software:
Compiler: | Programming Tool |
Assembler: | Programming Tool |
Ubuntu: | System |
Text Editor: | Application |