Socket为什么要翻译成套接字
链接:https://www.zhihu.com/question/21383903/answer/64103663
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
理论上对于计算机界的新名词,我们国家有个中国计算机学会,下面有个“计算机术语审定工作委员会”,其职责就是“负责计算机新术语的审定工作,收集、翻译、释义、审定和推荐计算机术语,将审定过的新术语报全国名词审定委员会,审定过的新词在CCF平台上宣传推广”,成员是全国几十名教授哦。很希望能看到他们的成果,可是在他们“CCF平台”上木有任何进一步信息……
好吧我知道他们不会理我,我自己找谷大叔玩。友情提醒,跟我一样睡不着的可以往下继续看,不看也不损失什么,看了也收获不了什么,就4这么拽。
在计算机领域,socket有多个意思。在硬件上,理解为插座上没错的,比如CPU的插座Socket 370, Socket 462, Socket AM3,这个大家都很容易理解,木有异议。让人很费解的是这货出现在软件领域(广义)时,就硬生生改名套接字了。
最早出现socket,目前俺能找到的信息,是1972年一篇关于ARPANET(美国高等研究计划署网络,互联网的祖师爷)面向功能协议的论文(computer.org 的页面):
容易看出,作者是想表达建立网络连接和插插座一样,一方去“插”一方“被插”。1974年另一介绍仿ARPANET直连的论文也提到同样的概念,并更仔细的描述这一交互机制。(ietf.org 的页面)
然后真正将socket概念发扬光大的,是1983年4.2BSD的发布,这是伯克利推出内含TCP/IP的第一个Unix BSD版本(berkeley.edu 的页面)
从这个时期起,socket是一种进程间通信机制,提供一种供应用程序访问通信协议的操作系统调用,并且通过将socket与Unix系统文件描述符相整合,使得网络读写数据(或者服务调用)和读写本地文件一样容易。很显然,这货已经离插座越来越远了,已经完全不再是硬件上的物件,而是一序列的“指令” ,按汉语的理解,已经具备了“套接”(建立网络通讯或进程间通讯)和“字”(可交互的有序指令串)的概念。
然后我们回到国内。俺在知网翻了很久很久,最早关于socket的文献竟然就是一篇讲翻译的,《计算机网词汇译名讨论》 ,发表于1977年02期《电子计算机动态》,文中把socket译为“媒介(字)”,可见作者已基本理解了该词的意义,并且在此之前应该已经有文献里用到了这个词,可惜实在找不到。
然后在1979年09期《电子计算机参考资料》上一篇无名氏作的《计算机网络软件简介》上,也是关于ARPANET的,作者直接就前无古人的冒出了“套接字”这三个字。同时作者提“信口”。文中虽然没有出现socket字样,但由于所描述的对象实际就是socket,所以俺就认为这就是他了。
能找到最早提及socket的文献,是阎保平发表于1982年12期《计算机研究与发展》的《一种局部互连分组交换网络的体系结构》,文章设计了一种局域网组网的原理和实现,既在文中提到套接字,又在一个图表中示意出了socket。

还有一篇早期文献提到了套接字,是陆圣铭发表在1984年07期《电子技术》上的《微计算机时代的普及型局部网络》,在介绍OMNINET(一种结构简单、灵活的低成本微型机局域网方案)时提到socket为“软插口”,并附加了注释“并不是硬件上的插座”。
所以可以认为在1980年前后几年,socket一词已经进入我国学界,然后在大约80年代中期套接字这一翻译被逐渐普遍接受。
嗯,谢谢观赏。然而看到这也还是没有x用啊,我只是说了说历史,还是没说清为什么是不是,可是我从一开始就说了这是未知之谜啊,哈哈哈哈。其实我也很不喜欢这种生涩的译名,比如context设备上下文、handle句柄、macro宏,我小时候自己看计算机书籍好辛苦的,都是汉字但就是不知道在说什么。
Socket为什么要翻译成套接字的更多相关文章
- 项目笔记---Socket Error Code翻译
前言 在项目中为了方便调试及客户反馈,需要Socket错误数字的中文解释,MSDN上只有英文版,同时也想自己学习而且方便将来更新ErrorCode的实际发生的情景,顾有此博文. MSDN:https: ...
- socket , 套接口还是套接字,傻傻分不清楚
socket 做网络通信的朋友大都对socket这个词不会感到陌生,但是它的中文翻译是叫套接口还是套接字呢,未必大多数朋友能够分清,今天我们就来聊聊socket的中文名称. socket一词的起源 在 ...
- Socket编程(C语言实现):socket()函数英文翻译
最近开始研究使用Socket API来网络编程,想着把自己的感想.感悟写下来.我发现在编程之外还有不少概念性的东西要学习.我觉得应该有以下几点吧: 1.得了解下计算机网络的基本概念,如OSI的7层模型 ...
- [Socket网络编程]由于套接字没有连接并且(当使用一个 sendto 调用发送数据报套接字时)没有提供地址,发送或接收数据的请求没有被接受。
原文地址:http://blog.sina.com.cn/s/blog_70bf579801017ylu.html,记录在此方便查看 解决办法: MSDN的说明: Close 方法可关闭远程主机连接, ...
- Linux系统编程(37)—— socket编程之原始套接字
原始套接字的特点 原始套接字(SOCK_RAW)可以用来自行组装IP数据包,然后将数据包发送到其他终端.也就是说原始套接字是基于IP数据包的编程(SOCK_PACKET是基于数据链路层的编程).另外, ...
- Socket编程实践(9) --套接字IO超时设置方法
引:超时设置3种方案 1. alarm超时设置方法 //代码实现: 这种方式较少用 void sigHandlerForSigAlrm(int signo) { return ; } signal(S ...
- Socket套接字
socket编程,熟悉吧,那到底什么是socket呢?: 我们经常把socket翻译为套接字,socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口,来供应用 ...
- 高性能Server---Reactor模型-----Socket
高性能Server---Reactor模型 原文地址:http://www.ivaneye.com/2016/07/23/iomodel.html 无处不在的C/S架构 在这个充斥着云的时代,我们 ...
- 高性能Server---Reactor模型
原文地址:http://www.ivaneye.com/2016/07/23/iomodel.html 无处不在的C/S架构 在这个充斥着云的时代,我们使用的软件可以说99%都是C/S架构的! 你发邮 ...
随机推荐
- Python第八天
Python面向对象进阶 一.静态方法 通过@staticmethod装饰器即可把其装饰的方法变为一个静态方法,什么是静态方法呢?其实不难理解,普通的方法,可以在实例化后直接调用,并且在方法里可以通过 ...
- C# 读取和配置IniFile
自定义IniFile操作类 using System; using System.Collections.Generic; using System.Linq; using System.Text; ...
- 第二周:Java For循环方法简介
1.for循环的作用 Java当中循环的意思就是让Java程序重复地执行某些语句.在程序设计时,常常需要处理大量的重复动作, 采用循环结构可以降低程序书写的长度和复杂度可使复杂问题简单化,提高程序的可 ...
- (Collection)347. Top K Frequent Elements
Given a non-empty array of integers, return the k most frequent elements. For example,Given [1,1,1,2 ...
- Javascript 实现HTML字符串的储存
在js中使用HTML字符串时,可以不用理会字符串的单引号和双引号的转义,因为使用的注释,注释当然什么都可以写. PS:这个有点类似于 php中的 <<<语法(heredoc和nowd ...
- XE8 & IOS开发之免费证书真机调试:开发证书、AppID、开发授权profile的申请,附Debug真机调试演示(XCode7 Beta版或以上版本适用,有图有真相)
网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,苹果发布Xcode ...
- JAVA 教程推荐
JAVA 教程 学习地址:http://www.manongjc.com/mysql/mysql_tutorial.html Java 简介 Java是由Sun Microsystems公司于1995 ...
- linux svn 用户配置
1:创建存放仓库的目录 mkdir -p /home/svn/ 2:创建svn仓库 svnadmin create /home/svn/evansource 3:配置仓库(一共三个文件夹auzhz.p ...
- chrome中showModalDialog解决方案
调用myShowModalDialog function myShowModalDialog(url, width, height, callback) { if(window.showModalDi ...
- agile/scrum 如果一切都从解放前开始
一个非常珍贵的机会,聚集了公司很多牛人,进行了一场发人深省的讨论.有一个话题我想拿出来和他家分享一下我的看法. 越来越不舒服的站会 站会是每天都在固定的时间.地点,大概持续15分钟左右(我们的小组都比 ...