计算机的核心:抽象与共性

📅 发布时间:2026/7/6 6:22:08 👁️ 浏览次数:
计算机的核心:抽象与共性
初学计算机时,我们常被工具的多样性所迷惑:在终端里用ls查看目录,用grep过滤日志;在 Python 中用pathlib操作路径,用re匹配字符串;一边运行ps aux查看进程,一边调用subprocess.run()启动子程序……这些操作看似分散在不同“世界”,但如果你退后一步,就会发现一个惊人的事实:无论你用的是 Shell 命令还是编程语言 API,你反复处理的,其实是同一组基本问题。这并非偶然。计算机系统的设计具有深刻的共性,而理解这些共性,关键在于把握一个核心思想:抽象(Abstraction)。一、抽象:同一能力,两种表达操作系统是硬件与应用之间的桥梁。它通过系统调用(syscall) 将 CPU、内存、磁盘、网络等物理资源,抽象为几类通用概念:文件(File)进程(Process)流(Stream)套接字(Socket)在此之上,不同的工具以不同方式暴露这些能力:抽象层级面向对象典型工具特点命令行接口人类用户ls,grep,ps,curl简洁、组合性强、适合快速脚本编程接口开发者pathlib