PUTTY代码分析概述

来源:互联网 发布:电脑围棋打谱软件 编辑:程序博客网 时间:2024/06/18 17:38

这几天看了一下PUTTY的代码,感觉水很深,代码的结构上分为几个层次:

1)界面展示层,负责键盘输入和图形输出功能

2)虚拟终端层,负责各种类型终端的处理

3)协议处理层,负责TELNET协议自动机的处理

4)通讯连接层,包括安全套接字、套接字、Proxy的处理

最为复杂的就是各种终端类型的处理,涉及到大量的转义字符的处理,每一种终端类型有不同的转义字符,目前知道的终端类型包括xtem(最为常用),vt100系列,每个终端类型代表了一系列的终端属性,例如是否支持彩色字符终端。

PUTTY的代码结构中充斥了大量的自动机结构,让人觉得摸不着头脑,需要细细的了解TENET协议和各种终端类型,否则就会像看天书。

推荐几个网站:

1)xterm的wiki

2)vt100的wiki

3)telent的wiki

还有一本书《用TCP/IP进行网际互联第三卷》其中的telnet一章


原创粉丝点击