通用网关接口 CGI (Common Gateway Interface)
CGI 是一种标准,它定义了动态文档应如何创建,输入数据应如何提供给应用程序,以及输出结果应如何使用。
万维网服务器与 CGI 的通信遵循 CGI 标准。
“通用”:CGI 标准所定义的规则对其他任何语言都是通用的。
“网关”:CGI 程序的作用像网关。
“接口”:有一些已定义好的变量和调用等可供其他 CGI 程序使用。
CGI 程序
CGI 程序的正式名字是 CGI 脚本(script)。
“脚本”指的是一个程序,它被另一个程序(解释程序)而不是计算机的处理机来解释或执行。
脚本运行起来要比一般的编译程序要慢,因为它的每一条指令先要被另一个程序来处理(这就要一些附加的指令),而不是直接被指令处理器来处理。
应用编程接口 API (Application Programming Interface)
当某个应用进程启动系统调用时,控制权就从应用进程传递给了系统调用接口。
此接口再将控制权传递给计算机的操作系统。操作系统将此调用转给某个内部过程,并执行所请求的操作。
内部过程一旦执行完毕,控制权就又通过系统调用接口返回给应用进程。
系统调用接口实际上就是应用进程的控制权和操作系统的控制权进行转换的一个接口,即应用编程接口 API。
几种应用编程接口 API
Berkeley UNIX 操作系统定义了一种 API,它又称为套接字接口(socket interface)。
微软公司在其操作系统中采用了套接字接口 API,形成了一个稍有不同的 API,并称之为 Windows Socket。
AT&T 为其 UNIX 系统 V 定义了一种 API,简写为 TLI (Transport Layer Interface)。