网络流行的世界,编程离不开socket,在此想通过我的语言让rookie对socket有一点初步的认识。
什么是 socket?它是使用 标准Unix 文件描述符 (file descriptor) 和其它程序通讯的方式。显然它是起源于unix,那么在unix系统里socket到底是怎么回事呢,unix系统实际上可以描述为一个文件系统,任何形式的i/o,都表现为程序对文件描述符的读写,例如:某用户进行一次 i/o操作,它首先调用"打开"获得对指定文件或设备的使用权,并返回称为文件描述符的整型数,以描述用户在打开的文件或设备上进行I/O操作的进程。然后这个用户进程多次调用"读/写"以传输数据。当所有的传输操作完成后,用户进程关闭调用,通知操作系统已经完成了对某对象的使用。 随着网络的应用,tcp/ip协议集成到unix系统中,首先出现了一个很重要的问题:网络i/o的两个进程不在同一台机器上,他们如何联系?这就用到了socket。
现在socket普遍用于各种操作系统,用于描述ip地址和网络端口。很多关于关于socket的文章里都会出现“套接字”,其实socket就是套接字.总结一下:Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。
如果你现在对以上的文字一点都不明白,那么要么别再看了,我写的东西太差或者坚持一下,第2课
什么是 socket?它是使用 标准Unix 文件描述符 (file descriptor) 和其它程序通讯的方式。显然它是起源于unix,那么在unix系统里socket到底是怎么回事呢,unix系统实际上可以描述为一个文件系统,任何形式的i/o,都表现为程序对文件描述符的读写,例如:某用户进行一次 i/o操作,它首先调用"打开"获得对指定文件或设备的使用权,并返回称为文件描述符的整型数,以描述用户在打开的文件或设备上进行I/O操作的进程。然后这个用户进程多次调用"读/写"以传输数据。当所有的传输操作完成后,用户进程关闭调用,通知操作系统已经完成了对某对象的使用。 随着网络的应用,tcp/ip协议集成到unix系统中,首先出现了一个很重要的问题:网络i/o的两个进程不在同一台机器上,他们如何联系?这就用到了socket。
现在socket普遍用于各种操作系统,用于描述ip地址和网络端口。很多关于关于socket的文章里都会出现“套接字”,其实socket就是套接字.总结一下:Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。
如果你现在对以上的文字一点都不明白,那么要么别再看了,我写的东西太差或者坚持一下,第2课
回复Comments
作者:
{commentrecontent}