学习目标

  • 理解 Linux 在计算机体系结构学习中的重要性
  • 了解 Linux 的历史和发展
  • 认识 Linux 的优势

1.1 Linux 简史

Unix 的诞生

1969 年,贝尔实验室的 Ken Thompson 和 Dennis Ritchie 开发了 Unix 操作系统。Unix 的设计哲学影响了后来几乎所有的操作系统。

Linux 的诞生

1991 年,芬兰大学生 Linus Torvalds 开发了 Linux 内核。他在新闻组发布了著名的邮件:

“I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu)…”

如今,Linux 已经成为服务器、超级计算机、嵌入式系统的主流操作系统。

1.2 为什么学习体系结构要用 Linux?

1. 开源透明

Linux 是开源的,你可以查看和修改任何代码。学习处理器设计时,你需要深入理解操作系统如何与硬件交互,Linux 提供了这个机会。

2. 强大的命令行

处理器开发涉及大量的编译、仿真、调试工作,Linux 的命令行工具链非常强大且高效。

3. 丰富的开发工具

  • GCC/Clang:编译器
  • GDB:调试器
  • Make/CMake:构建工具
  • Verilator/Vivado:硬件仿真工具

这些工具在 Linux 上运行最稳定。

4. 行业标准

几乎所有的处理器设计公司(Intel、AMD、ARM、RISC-V)都使用 Linux 作为开发环境。

1.3 Linux 发行版选择

推荐发行版

Ubuntu(推荐新手)

  • 用户友好,文档丰富
  • 软件包齐全
  • 社区活跃

Debian

  • 稳定可靠
  • Ubuntu 的上游发行版

Arch Linux(进阶用户)

  • 滚动更新
  • 高度可定制

本课程使用

我们推荐使用 Ubuntu 22.04 LTS 或更新版本。

1.4 Linux 哲学

一切皆文件

在 Linux 中,硬件设备、进程信息都以文件形式呈现。这种抽象简化了系统设计。

小而美的工具

Unix/Linux 提倡开发小而专注的工具,通过管道组合完成复杂任务。

# 统计代码行数
find . -name "*.c" | xargs wc -l | sort -n

自动化一切

重复的工作应该用脚本自动化。这在处理器开发中尤为重要。

实践练习

  1. 阅读 《Unix 编程艺术》 第一章
  2. 观看纪录片 Revolution OS
  3. 思考:为什么开源对处理器设计很重要?

下一步

准备好了吗?让我们开始 第 2 章:Linux 安装与配置

更新时间: