端口、系统服务、系统进程概念

 端口

    计算机“端口”是英文port的义译,可以认为是计算机与外界通讯交流的出口。其中硬件领域的端口又称接口,如:USB端口、串行端口等。软件领域的端口一般指网络中面向连接服务和无连接服务的通信协议端口,是一种抽象的软件结构,包括一些数据结构和I/O(基本输入输出)缓冲区。

在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。二是逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。

    系统服务

    在Windows 2000/XP/2003系统中,服务是指执行指定系统功能的程序、例程或进程,以便支持其他程序,尤其是低层(接近硬件)程序。通过网络提供服务时,服务可以在Active Directory(活动目录)中发布,从而促进了以服务为中心的管理和使用。

    服务是一种应用程序类型,它在后台运行。服务应用程序通常可以在本地和通过网络为用户提供一些功能,例如客户端/服务器应用程序、Web服务器、数据库服务器以及其他基于服务器的应用程序。

    系统服务的作用

    (1)启动、停止、暂停、恢复或禁用远程和本地计算机服务。

    (2)管理本地和远程计算机上的服务。

    (3)设置服务失败时的故障恢复操作。例如,重新自动启动服务或重新启动计算机。

    (4)为特定的硬件配置文件启用或禁用服务。

    (5)查看每个服务的状态和描述。

    进程

    进程是指在系统中正在运行的一个应用程序;线程是系统分配处理器时间资源的基本单元,或者说进程之内独立执行的一个单元。对于操作系统而言,其调度单元是线程。一个进程至少包括一个线程,通常将该线程称为主线程。一个进程从主线程的执行开始进而创建一个或多个附加线程,就是所谓基于多线程的多任务。

系统服务和系统进程之间有些关系。有的进程要依靠系统服务才可以运行的。

系统服务和系统进程有的会打开一些端口,以取得某些功能。

    "服务"是一种后台处理(或帮助)程序,主要是用来协调系统的某项或某些功能,以使系统更好用。进程是维持服务运行的程序组件,一个服务可能需要多个进程来支持,同样一个进程也可能同时支持多个服务运行。

 
    并不是每一个进程都会开端口,只有需要与网络上其他进程进行通信的进程才会绑定一个端口。
    端口在实际中的应用
    1:利用java开发企业级web应用时,服务器端都会配置tomcat或weblogic等等服务器,其实这些服务器都需要运行在java虚拟机中并调用java类库,其中服务器中必须调用java提供的Socket类来监听客户端的请求,并解析所获取的套接字,将数据保存进request对象中。
    2:腾讯QQ的服务器上也安装了相应的程序来接受客户端的聊天内容并进行转发,这个程序中就利用到了socket来监听客户端的套接字。
    3:数据库服务,例如mysql、oracle等等,都可以远程连接;当远程连接时,客户端(例如:JAVA中的JDBC、C#中的ADO)采用TCP/IP协议发送请求给数据库服务,而当本机连接时,客户端则直接通过socket发送请求给服务。因此数据库的连接都需要开放端口。
原文地址:https://www.cnblogs.com/pricks/p/1601899.html