目录
19 关系: 弹出式广告,开放平台通信,微軟視窗作業系統應用程式設計介面函式列表,CORBA,组件对象模型,D-Bus,Delphi,遠程過程調用,面向对象程序设计,衝擊波蠕蟲,訊息傳遞 (軟體),OPC UA,ReactOS,TCP/UDP端口列表,Web服务,Windows DNA,栈缓冲区溢出,本地过程调用,.NET Remoting。
弹出式广告
彈出式廣告(Pop-up ad)是全球資訊網(WWW)上的一種線上廣告形式,意圖透過廣告來增加網站流量或取得電郵地址。它透過用戶在進入網頁時,自動開啟一個新的瀏覽器視窗,以吸引讀者直接到相關網址瀏覽,從而收到宣傳之效。這些廣告一般都透過網頁的JavaScript指令來啟動,但亦有透過其他形式啟動的。 由於現時彈出式廣告的過份泛濫,很多浏览器或者浏览器组件也加入了拦截弹出式窗口的功能,以屏蔽这样的广告。 彈出式廣告不一定會在瀏覽器的最上層出現,有部份彈出式廣告刻意的把自己安排在視窗的最底層,或把自己縮小隱藏,意圖在用戶不為意的情況下搜集用戶的上網行為或下載及安裝未經用戶許可的軟件或插件。這種行為,大多數用戶都認為已屬於滋擾性。.
开放平台通信
开放平台通信(Open Platform Communications)簡稱OPC,旧称“用于过程控制的OLE”,是用于工业自动化的一种通信标准。设备制造商(特别是PLC)如果遵从这一标准,则实时数据可提供给OPC Server,上位机的软件(称为OPC Client)直接访问OPC Server就可以获取到设备数据,从而对不同的设备的差异透明化。 1996年首次发布后,由维护这一标准。 2011年名字从“用于过程控制的OLE”改为“开放平台通信”,以反映OPC已经从过程控制领域推广到智能建筑、等。OPC也超出了传统的OLE技术,采用了.NET Framework、XML、OPC基金会的二进制编码TCP格式。.
微軟視窗作業系統應用程式設計介面函式列表
下表是微軟視窗作業系統應用程式設計介面函式(APIs)列表:.
查看 Distributed COM和微軟視窗作業系統應用程式設計介面函式列表
CORBA
CORBA(Common Object Request Broker Architecture)通用物件請求代理架構是軟體構建的一个標準。 CORBA標準由物件管理組織(OMG)設立並進行控制,CORBA定義了一系列API,通信協議,和物件/服務信息模型用於使得異質應用程序能夠互相操作,這些應用程序用不同的程式語言編寫,運行在不同的平台上。CORBA因此為定義明確的物件提供了平臺和位置的透明性,這些物件是分布式計算平臺的基礎。 通常來說,CORBA把用其他語言開發的程序代码和關於該程序代码能力和如何調用該程序代码的信息包到一個开发包(package)中,开发包中的物件則可以在網络上被其他程序(或CORBA物件)調用。在這個意義上來講,CORBA可以被看作是一個機器可讀的文件檔格式,類似於头文件(header),但是具有相當多的信息。 CORBA使用一種接口描述语言(Interface description language)用於刻畫物件將呈現出來的介面。CORBA又規定了從IDL到特定程式語言,如C++或Java,實現的映射。這個映射精確的描述了CORBA資料類型是如何被用戶端和伺服器端實現的。標準映射的有Ada、C、C++、Smalltalk、Java、以及Python。還有一些非標準的映射,為Perl和Tcl的映射由這些語言寫的ORB實現。 CORBA的IDL只是IDL的一個例子。 在提供用戶語言和平臺中性的遠端程序呼叫規範的同時,CORBA也定義了通常需要的服務,例如事務和安全。.
组件对象模型
组件对象模型(Component Object Model,縮寫COM)是微軟的一套软件组件的二进制接口标准。这使得跨编程语言的进程间通信、动态对象创建成为可能。COM是多项微软技术与框架的基础,包括OLE、、ActiveX、COM+、DCOM、、DirectX、Windows Runtime。.
D-Bus
D-Bus是一個行程間通訊及远程过程调用機制,可以讓多個不同的计算机程序(即行程)在同一臺電腦上同時進行通訊。D-Bus作為freedesktop.org專案的一部份,其設計目的是使Linux桌面环境(如GNOME與KDE等)提供的服務標準化。 freedesktop.org專案同時也開發了一個稱為libdbus的自由及开放源代码软件函式庫,作為規範的參考實作。這個函式庫常與D-Bus本身混淆。也存在著其他的D-Bus實作,像是GDBus (GNOME),QtDBus (Qt/KDE),dbus-java以及sd-bus(systemd的一部份)。.
Delphi
Delphi,是Windows平台下著名的快速應用程式開發(Rapid Application Development,简称RAD)。它的前身,即是DOS時代盛行一時的「Borland Turbo Pascal」,最早的版本由美国Borland(宝兰)公司於1995年开发。主创者為安德斯·海尔斯伯格。經過數年的發展,此產品也轉移至Embarcadero公司旗下。 从产品名称上就可以知道,Turbo Pascal使用的是Pascal语言。从Turbo Pascal 5.5版开始,Borland公司在传统Pascal的基础上加入了物件導向的功能。 Delphi是一个整合開發環境(IDE),使用的核心是由传统Pascal语言发展而来的Object Pascal,以图形用户界面(Graphical User Interface,简称GUI)为开发环境,透過IDE、VCL工具與編譯器,配合連結資料庫的功能,構成一個以物件導向程式設計為中心的應用程式開發工具。Delphi所編譯的可執行檔,雖然容量較大,但因為產生的是真正的原生機器碼,效能上比較快速。除了使用資料庫的程式之外,不需安裝即可執行,在使用上相當方便。 Delphi在本质上應該歸類為軟體開發工具,而並非是程式语言,但由于Delphi几乎是目前市场上唯一使用Pascal,並持續推出新版本的商业产品。因此,有時人们會把Delphi視為Object Pascal的代名词。Borland公司因而把Object Pascal改称为Delphi。2006年,Borland把开发工具产品线独立出来,成立了一家新的公司CodeGear,並把產品線交由此公司负责。原本的Delphi,亦曾一度因此被命名为Turbo Delphi。但是在新的版本中,除了Delphi for Win32(原有的Delphi版本)之外,还有一个新产品「Delphi for PHP」。在CodeGear的发展规划中,或许“Delphi”不再是Object Pascal的专屬IDE名稱,而是将之提升到通用IDE品牌的層次。2008年5月7日,Embarcadero Technologies(易博龙)公司宣布以2300万美元的价格收购CodeGear公司,从而把Delphi收入囊中。2009年5月6日,Micro Focus宣布以7500万美元收购Borland。 Delphi目前的最新版本是Delphi 10.2 Tokyo。.
遠程過程調用
远程过程调用(Remote Procedure Call,縮寫為 RPC)是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用或远程方法调用,例:Java RMI。.
面向对象程序设计
面向对象程序设计(Object-oriented programming,缩写:OOP)是種具有物件概念的程式編程典範,同时也是一种程序开发的抽象方针。它可能包含資料、、程式碼與方法。对象則指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性,物件裡的程序可以訪問及經常修改物件相關連的資料。在物件導向程式編程裡,電腦程式會被設計成彼此相關的物件。 面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统的思想刚好相反:传统的程序设计主张将程序看作一系列函数的集合,或者直接就是一系列对电脑下达的指令。面向对象程序设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象,因此它们都可以被看作一个小型的“机器”,即对象。目前已经被证实的是,面向对象程序设计推广了程序的灵活性和可维护性,并且在大型项目设计中广为应用。此外,支持者声称面向对象程序设计要比以往的做法更加便于学习,因为它能够让人们更简单地设计并维护程序,使得程序更加便于分析、设计、理解。反对者在某些领域对此予以否认。 当我们提到面向对象的时候,它不仅指一种程序设计方法。它更多意义上是一种程序开发方式。在这一方面,我们必须了解更多关于面向对象系统分析和面向对象设计(Object Oriented Design,简称OOD)方面的知识。許多流行的程式語言是物件導向的,它們的風格就是會透由物件來創出實例。 重要的物件導向程式語言包含Common Lisp、Python、C++、Objective-C、Smalltalk、Delphi、Java、Swift、C#、Perl、Ruby 與 PHP等。.
衝擊波蠕蟲
衝擊波蠕蟲(Worm.Blaster或Lovesan,也有譯為「疾風病毒」)是一種散播於Microsoft作業系統,Windows XP與Windows 2000的蠕虫病毒,爆發於2003年8月。 本蠕蟲第一次被注意並如燎原火般散佈,是在2003年的8月11日。它不斷繁殖並感染,在8月13日達到高峰,之後藉助ISP與網路上散佈的治療方法阻止了此蠕蟲的散佈。 在2003年8月29日,一個來自美國明尼蘇達州的18歲年輕人Jeffrey Lee Parson由於創造了Blaster.B變種而被逮捕;他在2005年被判處十八個月的有期徒刑。.
訊息傳遞 (軟體)
在電腦科學中,訊息傳遞(Message passing)是一種通訊的形式,在并发计算、平行計算、物件導向程式設計與行程間通訊中使用。在這種模式中,行程或物件以傳送及接收訊息的方式來達成同步。 不同于传统程序设计通过名字直接调用(invoking)一个进程、子例程或者函数,訊息傳遞直接发送消息给一个进程,依赖进程或基础框架来调用实际执行的代码。 可分为同步方式与异步方式。.
OPC UA
OPC UA的全名是OPC Unified Architecture(OPC統一架構)。是應用在自动化技术的機器對機器网络传输协议。有以下的特點:.
ReactOS
ReactOS是一个开发与Windows NT和Windows 2000应用程序和硬件驱动程序兼容的开源操作系统的项目。此项目目前虽然只是处于内部测试(alpha)开發状态,但到2005年1月其中一些子项目已经完成了目标。 ReactOS主要是由C語言編寫。部分元件則由C++編寫,例如ReactOS文件瀏覽器。 ReactOS的各部份在GNU通用公共许可证、GNU寬通用公共許可証、及/或BSD许可证下发布。 為確保操作系統沒有任何一部份是看過泄漏出來的微軟Windows源碼的人所寫,或者逆向工程的過程達不到净室设计標準,一個全盤的源碼審查由ReactOS主要開發者下令展開。此審查目前已經結束。.
TCP/UDP端口列表
计算机之间依照互联网传输层TCP/IP协议的協定通信,不同的協定都對應不同的 端口。并且,利用数据报文的UDP也不一定和TCP採用相同的端口號碼。以下為兩種通信協定的端口列表連結:.
查看 Distributed COM和TCP/UDP端口列表
Web服务
Web服务是一种服務導向架構的技术,通过标准的Web协议提供服务,目的是保证不同平台的应用服务可以互操作。 根据W3C的定义,Web服务(Web service)应当是一个软件系统,用以支持网络间不同机器的互动操作。网络服务通常是许多应用程序接口(API)所组成的,它们透过网络,例如国际互联网(Internet)的远程服务器端,执行客户所提交服务的请求。 尽管W3C的定义涵盖诸多相异且无法介分的系统,不过通常我们指有关於主从式架构(Client-server)之间根据SOAP协议进行传递XML格式消息。无论定义还是实现,WEB服務過程中會由伺服機提供一個機器可讀的描述(通常基于WSDL)以辨識伺服機所提供的WEB服務。另外,虽然WSDL不是SOAP服务端点的必要条件,但目前基于Java的主流WEB服务开发框架往往需要WSDL实现客户端的源代码生成。一些工业标准化组织,比如WS-I,就在WEB服务定义中强制包含SOAP和WSDL。.
Windows DNA
Windows DNA(Windows Distributed interNet Application architecture)是微軟在Windows NT與Windows 2000時期,配合當時的Microsoft BackOffice以及COM、MTS、COM+等技術所規劃的分散式應用程式(Distributed Application)開發架構,使用的是,在Microsoft.NET出現後逐漸淡出市場。.
查看 Distributed COM和Windows DNA
栈缓冲区溢出
栈缓冲区溢出(stack buffer overflow或stack buffer overrun)是计算机程序把数据写入调用栈上的内存时超出了数据结构的边界。栈缓冲区溢出是缓冲区溢出的一种。 这会损坏相邻数据的值,引发程序崩溃或者修改了函数返回地址从而导致执行恶意的程序。这种攻击方式称为stack smashing。可被用于注入可执行代码、接管进程的执行。是最为古老的黑客攻击行为之一。 (dead link).
本地过程调用
本地过程调用(LPC,Local Procedure Call,通常也被称为轻量过程调用或者本地进程间通信) 是一种由Windows NT内核提供的内部进程间通信方式。通过这一方式,同一计算机上的进程可以进行轻量的通信。在Windows Vista中,ALPC(Advanced Local Procedure Call,高级本地进程通信)替代了LPC。ALPC提供了一个高速可度量的通信机制,这样便于实现需要在用户模式下高速通信的用户模式驱动程序框架(UMDF,User-Mode Driver Framework)。 本地过程调用接口是Windows NT未公开原生API的一部分。这样的API不能够直接使用,但是可以通过如下方式间接使用:.
.NET Remoting
.NET远程处理(.NET Remoting )是微軟.NET Framework 中的一種網路通訊技術,與 XML Web Service 不同的是,它可以使用 SOAP 以外的協定來通訊,而在伺服端和用戶端之間所操作的方法近乎相同,用戶端可以不必考慮使用的協定,即可存取伺服端所開放的物件。這個技術與是由Distributed COM所發展而來的,與DCOM最大的不同是,DCOM有限制使用 TCP Port,但.NET Remoting 可以選擇使用 TCP 或 HTTP 的方式通訊,而資料可以利用 SOAP 或二進位傳輸方式在網路上流動,二進位的傳輸效能是 SOAP 所不能比的,但 SOAP 卻可以得到和 Web Service 相互溝通的能力,因此.NET Remoting 的設計彈性較大。.NET Remoting 技術目前已整合到 Windows Communication Foundation 中。.
查看 Distributed COM和.NET Remoting
亦称为 DCOM,Distributed Component Object Model,Network OLE,Network Object Linking and Embedding,网络对象连接与嵌入。

