📚 Understanding Software Fundamentals | 软件基础知识详解
Before we dive into the world of software, ask yourself: what makes a computer actually work? The hardware is the physical machinery, but it is the software that provides the instructions and enables us to interact with these machines. Without software, hardware is merely a collection of inert electronic components.
在我们深入探讨软件世界之前,请先问自己一个问题:是什么让计算机真正运转起来?硬件是物理设备,而软件则提供指令,使我们能够与这些机器交互。没有软件,硬件仅仅是一堆无生命的电子元件。
1. What is Software? | 什么是软件
Software is a generic term used to describe a collection of computer programs, procedures, and documentation that perform specific tasks on a computer system. It is a set of instructions that tells the hardware what to do, when to do it, and how to do it.
软件是一个通用术语,用于描述在计算机系统上执行特定任务的一组程序、规程和相关文档。软件是一组指令,它告诉硬件做什么、何时做以及怎么做。
Software can be broadly categorised into two main types: system software and application software. Understanding the distinction between them is fundamental to any computer science course.
软件大致可以分为两大类:系统软件和应用软件。理解它们之间的区别是任何计算机科学课程的基础。
2. Categories of Software | 软件的分类
There are two main categories of software. Each serves a completely different purpose in the operation of a computer.
软件主要有两大类,每一类在计算机运行中扮演着完全不同的角色。
- System Software: Software designed to operate and control the computer hardware and to provide a platform for running application software. Examples include operating systems, device drivers, and utilities.
- 系统软件:旨在操作和控制计算机硬件,并为运行应用软件提供平台的软件。例如操作系统、设备驱动程序和实用程序。
- Application Software: Software designed to help the user perform specific tasks, such as word processing, browsing the internet, or playing a game. Examples include Microsoft Word, Google Chrome, and Adobe Photoshop.
- 应用软件:旨在帮助用户执行特定任务的软件,例如文字处理、浏览互联网或玩游戏。例如 Microsoft Word、Google Chrome 和 Adobe Photoshop。
The table below summarises the key differences between the two types.
下表总结了这两种软件之间的主要区别。
| Feature | System Software | Application Software |
| Purpose | Manages hardware and system resources | Performs specific user-oriented tasks |
| Runs | In the background automatically | Only when initiated by the user |
| Dependency | Cannot run without hardware | Cannot run without system software |
| Examples | Operating System, Drivers | Word processors, Web browsers |
3. The Operating System | 操作系统
An operating system (OS) is the most important piece of system software. It is a set of programs that manages all the hardware and software resources of a computer system. Every general-purpose computer requires an operating system to function.
操作系统是系统软件中最重要的组成部分。它是一个管理计算机系统所有硬件和软件资源的程序集合。每台通用计算机都需要操作系统才能运行。
The operating system acts as an intermediary between the user and the hardware. It provides a user-friendly environment, hiding the complexity of the hardware from the user. Common examples include Windows, macOS, Linux, iOS, and Android.
操作系统充当用户与硬件之间的中介。它提供一个用户友好的环境,向用户隐藏硬件的复杂性。常见的例子包括 Windows、macOS、Linux、iOS 和 Android。
4. Core Functions of an Operating System | 操作系统的核心功能
All operating systems perform a set of core functions regardless of whether they run on a supercomputer or a mobile phone.
所有操作系统都执行一组核心功能,无论它们运行在超级计算机还是手机上。
- Memory Management: The OS allocates memory to different programs, ensuring that each runs in its own allocated space without interfering with others. It also manages the transfer of data between main memory and virtual memory when needed.
- 内存管理:操作系统为不同程序分配内存,确保每个程序都在自己的空间内运行而互不干扰。它还在需要时管理主内存与虚拟内存之间的数据传输。
- Process Management: The OS schedules the execution of processes on the CPU. It ensures that each process receives enough processing time and handles multitasking efficiently through a technique called time-slicing.
- 进程管理:操作系统在 CPU 上调度进程的执行。它确保每个进程获得足够的处理时间,并通过称为时间片的机制高效处理多任务。
- File Management: The OS organises files into directories, handles their creation, deletion, and modification. It also controls access permissions to ensure data Security.
- 文件管理:操作系统将文件组织到目录中,处理它们的创建、删除和修改。它还控制访问权限以确保数据安全。
- Security and Access Control: The OS provides user authentication, such as passwords and biometrics, to protect against unauthorised access. It also manages user permissions to maintain system integrity.
- 安全与访问控制:操作系统提供用户身份验证,如密码和生物识别,以防止未经授权的访问。它还管理用户权限以维护系统完整性。
- Interrupt Handling: The OS responds to interrupts from hardware devices (such as a keyboard keypress or a mouse click) and from software errors, taking appropriate actions in real time.
- 中断处理:操作系统响应硬件设备的中断(如键盘按键或鼠标点击)以及软件错误,并实时采取适当的措施。
CPU ⇌ Memory ⇌ I/O Devices ⇌ User
5. Device Drivers | 设备驱动程序
Device drivers are specialised system software components that allow the operating system to communicate with hardware devices. Each hardware device, such as a printer, graphics card, or network adapter, requires a specific driver.
设备驱动程序是专门的系统软件组件,允许操作系统与硬件设备通信。每个硬件设备,如打印机、显卡或网卡,都需要特定的驱动程序。
When a program requests an operation involving hardware, the driver translates the generic requests from the OS into device-specific commands that the hardware can understand. Without the correct driver, the device will not function properly, even if it is physically connected and powered on.
当程序请求涉及硬件的操作时,驱动程序将操作系统发出的通用请求转换为硬件能够理解的、针对特定设备的命令。如果没有正确的驱动程序,即使设备已物理连接并通电,也无法正常工作。
Drivers can be classified as kernel-mode drivers, which run at a high privilege level with direct access to hardware, or user-mode drivers, which run with fewer privileges and less risk to system stability.
驱动程序可分为内核模式驱动程序,它以高权限级别运行并可直接访问硬件;以及用户模式驱动程序,它以较低权限运行并且对系统稳定性的风险较小。
6. Utility Software | 实用程序软件
Utility software is a category of system software designed to help analyse, configure, optimise, and maintain a computer system. While the OS focuses on basic operation, utilities focus on system health and performance.
实用程序软件是系统软件的一个类别,旨在帮助分析、配置、优化和维护计算机系统。操作系统侧重于基本运行,而实用程序则侧重于系统健康和性能。
Common utility programs include:
常见的实用程序包括:
- Disk Formatting Tools: Prepare a storage device for use by creating a file system on it.
- 磁盘格式化工具:通过在存储设备上创建文件系统来准备其使用。
- Antivirus Software: Detect, quarantine, and remove malicious software such as viruses, worms, and trojans.
- 杀毒软件:检测、隔离并删除恶意软件,如病毒、蠕虫和木马。
- Disk Defragmenters: Reorganise data on a hard disk so that files are stored in contiguous blocks, improving read and write speed.
- 磁盘碎片整理程序:重新组织硬盘上的数据,使文件存储在连续块中,从而提高读写速度。
- Backup Utilities: Create copies of important data to prevent loss due to hardware failure or accidental deletion.
- 备份实用程序:创建重要数据的副本,以防止因硬件故障或意外删除而导致数据丢失。
- System Monitors: Display real-time information about CPU usage, memory usage, and running processes.
- 系统监视器:实时显示 CPU 使用率、内存使用率和正在运行的进程的信息。
- File Compression Tools: Reduce the size of files and folders to save disk space and speed up file transfers. Common formats include .zip and .rar.
- 文件压缩工具:减小文件和文件夹的大小以节省磁盘空间并加快文件传输速度。常见格式包括 .zip 和 .rar。
7. Application Software | 应用软件
Application software, sometimes called simply ‘apps’ or ‘applications’, is designed to help users complete specific tasks. These programs harness the capabilities of the computer to solve particular problems or produce specific outputs.
应用软件,有时简称为“应用程序”,旨在帮助用户完成特定任务。这些程序利用计算机的能力来解决特定问题或生成特定的输出。
Application software can be divided into two subcategories:
应用软件可分为两个子类别:
- General-Purpose Software: Programs that can be used for a wide range of tasks. For example, a word processor can write a letter, a report, or a book. Spreadsheets can manage budgets, create graphs, or store data.
- 通用应用软件:可广泛用于多种任务的程序。例如,文字处理器可以写信、报告或书籍。电子表格可以管理预算、创建图表或存储数据。
- Special-Purpose Software: Programs designed for one specific task. For example, a payroll system, a student record system, or a medical imaging application.
- 专用应用软件:为一项特定任务设计的程序。例如工资系统、学生记录系统或医学影像应用。
8. User Interface: Human-Computer Interaction | 用户界面:人机交互
A user interface is the part of the software that allows the user to interact with the computer. The quality of the user interface significantly affects how efficiently a user can work with the software.
用户界面是允许用户与计算机进行交互的软件部分。用户界面的质量显著影响用户使用该软件的效率。
There are several types of user interfaces, each with different strengths and weaknesses:
用户界面有几种类型,每种都有不同的优缺点:
- Graphical User Interface (GUI): Uses windows, icons, menus, and pointers (WIMP) for interaction. It is intuitive and easy to use, making it suitable for beginners. Examples include Windows desktop and macOS.
- 图形用户界面(GUI):使用窗口、图标、菜单和指针(WIMP)进行交互。它直观易用,适合初学者。例如 Windows 桌面和 macOS。
- Command Line Interface (CLI): User types commands using text. It offers greater control and uses fewer resources, but requires the user to memorise commands. It is often preferred by system administrators and experts.
- 命令行界面(CLI):用户使用文本输入命令。它提供更强的控制力并消耗更少的资源,但要求用户记住命令。系统管理员和专家通常更偏好它。
- Menu-Driven Interface: User navigates through a series of menus to make selections. It is simple, requires minimal training, and is commonly found in ATMs, ticket machines, and digital cameras.
- 菜单驱动界面:用户通过一系列菜单进行选择。它简单、需要的培训少,常见于 ATM 机、售票机和数码相机。
- Natural Language Interface: User interacts with the computer using voice or typed natural language. Examples include Siri, Alexa, and Google Assistant. This is becoming increasingly common in modern devices.
- 自然语言界面:用户使用语音或输入自然语言与计算机交互。例如 Siri、Alexa 和 Google Assistant。这在现代设备中日益普及。
9. Proprietary vs Open-Source Software | 专有软件与开源软件
Software can also be classified based on its licensing model. The two most important categories are proprietary software and open-source software.
软件还可以根据其许可模式进行分类。最重要的两类是专有软件和开源软件。
Proprietary software is owned by an individual or a company. The source code is usually hidden from users, and users must agree to specific terms to use it. Users generally cannot modify, copy, or redistribute the software. Examples include Microsoft Windows and Adobe Photoshop. The main advantage is that the software is professionally developed, typically well-documented, and comes with technical support.
专有软件归个人或公司所有。源代码通常对用户隐藏,用户必须同意特定条款才能使用。用户通常不能修改、复制或重新分发该软件。例如 Microsoft Windows 和 Adobe Photoshop。主要优势在于软件是专业开发的、通常有良好的文档支持,并附带技术支持。
Open-source software makes its source code available to the public. Users are free to study, modify, improve, and distribute the software. Examples include Linux, Apache web server, and LibreOffice. The main advantage is flexibility: users can adapt the software to their needs, and bugs are often found and fixed quickly by the community. However, support may be limited, and some open-source programs lack the polish of commercial products.
开源软件将其源代码公开。用户可以自由地研究、修改、改进和分发软件。例如 Linux、Apache Web 服务器和 LibreOffice。主要优势在于灵活性:用户可以根据自己的需要调整软件,而且错误往往能迅速被社区发现和修复。然而,支持可能有限,一些开源程序也缺少商业产品的精良程度。
An important middle category is freeware: software that is free to use but whose source code is not available (e.g., Adobe Acrobat Reader). Even if freeware is free of charge, it is still proprietary software in terms of licensing.
一个重要的中间类别是免费软件:可以免费使用但不提供源代码的软件(例如 Adobe Acrobat Reader)。即使免费软件不收费,它在许可角度上仍属于专有软件。
10. The Boot Process and Loader | 引导过程与加载程序
The boot process is the sequence of procedures the computer follows when it is powered on. It is a critical function that involves both hardware and software working together.
引导过程是计算机在开机时执行的一系列程序步骤。这是一个涉及硬件和软件协同工作的关键功能。
The typical sequence is as follows:
典型的顺序如下:
- When the computer is powered on, the CPU begins executing instructions stored in read-only memory (ROM), specifically the BIOS (Basic Input/Output System) or UEFI (Unified Extensible Firmware Interface).
- 当计算机通电时,CPU 开始执行存储在只读存储器(ROM)中的指令,特别是 BIOS 或 UEFI。
- The BIOS/UEFI performs the Power-On Self-Test (POST), which checks the RAM, keyboard, disk drives, and other hardware to confirm they are functioning correctly.
- BIOS/UEFI 执行加电自检(POST),检查 RAM、键盘、磁盘驱动器和其他硬件,以确认它们正常工作。
- The BIOS then locates the bootloader, usually on the hard disk, and loads it into main memory. The bootloader is a small program that loads the remainder of the OS into RAM.
- 然后 BIOS 找到引导加载程序(通常位于硬盘上),并将其加载到主内存中。引导加载程序是一个小程序,将操作系统的其余部分加载到 RAM 中。
- Finally, the OS takes control of the system, initialising device drivers and loading required background services before the user can log in.
- 最后,操作系统接管系统控制权,初始化设备驱动程序并加载所需的后台服务,然后用户才可以登录。
11. Software Maintenance and Upgrades | 软件维护与升级
Software is not static; it requires continuous maintenance and upgrades to remain useful and secure. In an IGCSE context, it is important to understand why updates are issued and what they contain.
软件不是一成不变的;它需要持续的维护和升级才能保持有用和安全。在 IGCSE 的背景下,理解为什么发布更新以及更新包含什么非常重要。
- Bug Fixes: Correct errors that were not discovered during the development and testing phases. This improves the reliability and stability of the software.
- 错误修复:修正开发和测试阶段未发现的错误。这提高了软件的可靠性和稳定性。
- Security Patches: Address vulnerabilities that could be exploited by malicious actors. With new threats appearing constantly, timely security updates are essential for any device connected to the Internet.
- 安全补丁:解决可能被恶意行为者利用的漏洞。由于新威胁不断出现,对于任何连接到互联网的设备,及时的安全更新至关重要。
- Performance Improvements: Optimise responsiveness and efficiency, reducing load times and memory consumption.
- 性能改进:优化响应速度和效率,减少加载时间和内存消耗。
- Feature Additions: Introduce new functionalities that were not previously available, sometimes requiring an upgrade to a new software version rather than just a patch.
- 功能新增:引入以前不可用的新功能,有时需要升级到新软件版本而不仅仅是一个补丁。
Software upgrades can be classified as either minor (revision number changes, e.g., version 1.1 to 1.2) or major (version number changes, e.g., version 1.0 to 2.0). Major upgrades often come with significant changes to the user interface and system requirements.
软件升级可分为小版本(修订号变化,如版本 1.1 至 1.2)和大版本(版本号变化,如版本 1.0 至 2.0)。重大升级通常伴随着用户界面和系统要求的显著变化。
12. Key Points for Exam Success | 考试要点总结
To perform well in your IGCSE Computer Science examination, remember the following key points:
为了在 IGCSE 计算机科学考试中取得好成绩,请记住以下关键要点:
- Software is divided into system software and application software. Know which category each common program belongs to.
- 软件分为系统软件和应用软件。要清楚常见程序属于哪一类别。
- The operating system manages memory, processes, files, and security. Be able to describe each function with a specific example.
- 操作系统管理内存、进程、文件和安全性。要能够用具体例子描述每个功能。
- Device drivers are needed for each piece of hardware; a driver translates generic OS instructions into device-specific commands.
- 每件硬件都需要设备驱动程序;驱动程序将通用的操作系统指令转换为特定设备的命令。
- Utility software maintains the system: antivirus, disk defragmenters, backup tools, and compression tools are all examples.
- 实用程序用于维护系统:杀毒软件、磁盘碎片整理器、备份工具和压缩工具都是典型例子。
- Compare GUIs and CLIs in terms of ease of use, resource consumption, and level of control. This comparison question appears frequently in the exam.
- 比较 GUI 和 CLI 在易用性、资源消耗和控制级别方面的差异。这个比较问题在考试中出现频率很高。
- Understand the difference between proprietary and open-source software, including costs, source-code availability, and support.
- 理解专有软件和开源软件之间的区别,包括成本、源代码可用性和支持方面。
Remember this chain: user → application software → operating system → drivers → hardware. Each layer has a specific job, and software cannot perform its tasks without the layers beneath it.
请记住这条链路:用户 → 应用软件 → 操作系统 → 驱动程序 → 硬件。每一层都有特定的工作,没有下层软件,上层软件就无法执行其任务。
Published by TutorHao | Computer Science Revision Series | aleveler.com
更多咨询请联系16621398022(同微信)
屏轩国际教育cambridge primary/secondary checkpoint, cat4, ukiset,ukcat,igcse,alevel,PAT,STEP,MAT, ibdp,ap,ssat,sat,sat2课程辅导,国外大学本科硕士研究生博士课程论文辅导