自学Python-socket基础

自学Python之路-Python基础+模块+面向对象
自学Python之路-Python网络编程
自学Python之路-Python并发编程+数据库+前端
自学Python之路-djangohtml

自学Python-socket基础

1、概念

进程通讯的方法有管道、命名管道、信号、消息队列、共享内存、信号量,这些方法都要求通讯的两个进程位于同一个主机。可是若是通讯双方不在同一个主机又该如何进行通讯呢?前端

可是,当咱们使用不一样的协议进行通讯时就得使用不一样的接口,还得处理不一样协议的各类细节,这就增长了开发的难度,软件也不易于扩展。因而UNIX BSD就发明了socket这种东西,socket屏蔽了各个协议的通讯细节,使得程序员无需关注协议自己,直接使用socket提供的接口来进行互联的不一样主机间的进程的通讯。这就比如操做系统给咱们提供了使用底层硬件功能的系统调用,经过系统调用咱们能够方便的使用磁盘(文件操做),使用内存,而无需本身去进行磁盘读写,内存管理。socket其实也是同样的东西,就是提供了tcp/ip协议的抽象,对外提供了一套接口,同过这个接口就能够统1、方便的使用tcp/ip协议的功能了。程序员

那么,在BSD UNIX又是如何实现这层抽象的呢?咱们知道unix中万物皆文件,没错,bsd在实现上把socket设计成一种文件,而后经过虚拟文件系统的操做接口就能够访问socket,而访问socket时会调用相应的驱动程序,从而也就是使用底层协议进行通讯。(vsf也就是unix提供给咱们的面向对象编程,若是底层设备是磁盘,就对磁盘读写,若是底层设备是socket就使用底层协议在网中进行通讯,而对外的接口都是一致的)。数据库

 

 

 

 

 ....django

相关文章
相关标签/搜索