终端

终端

VT100

DEC VT100 终端(1978)

终端 = 显示器 + 键盘 + 终端控制逻辑

┌──────────────────┐
│  Keyboard        │
├──────────────────┤
│  Terminal        │
│  Controller      │  ← protocol parsing / screen management
├──────────────────┤
│  Character       │
│  Generator       │
├──────────────────┤
│  CRT Display     │
└──────────────────┘
  1. 显示部分(CRT)

    • 显示字符点阵
    • 但不是“像素帧缓冲”
    • 字符由终端内部生成,而非主机绘制
  2. 键盘

    • 扫描按键
    • 转换为编码(ASCII / 控制码)
    • 发送给主机
  3. 终端控制逻辑(核心

    • 解析主机发来的 字符流
    • 识别控制序列(VT100 / ANSI)
    • 维护屏幕缓冲(80×24)
    • 处理光标、滚屏、清屏
    • 控制字符发生器

  1. 主机通过串口发来:

    ESC [ 10 ; 20 H
    Hello
    
  2. 终端控制器解析:

    • 光标跳到第 10 行第 20 列
    • 在那里显示 “Hello”

参见:

终端模拟器

Ghostty

最像 macOS 原生 Terminal.app 的终端模拟器。追求零配置,支持 GPU 加速,遵循 UNIX 哲学。省心,好用,朴素。

iTerm2

功能超丰富的终端,与 Tmux 适配很好。不过 UI 有些老旧。

WezTerm

可编程配置文件。使用 Rust 实现,支持 GPU 加速,支持 SSH 会话管理,有自己的多路复用协议。

Tabby

界面美观,支持 SSH 会话管理,但基于 Electron

Warp

AI 集成很好用

kitty

基于配置的终端。拥有很多私有协议。

Alacritty

支持 GPU 加速。我觉得有点平平无奇。

社区讨论:

posted @ 2025-11-06 22:46  Undefined443  阅读(15)  评论(0)    收藏  举报