隔壁新婚少妇真紧真爽,日韩在线麻豆,少妇挤奶av无码一区二区网站,久久精品无码一级毛片

文章詳情

  1. 您現(xiàn)在的位置:首頁
  2. 資訊中心
  3. 技術(shù)資料
  4. 詳情

應(yīng)用程序接口有什么作用

應(yīng)用程序接口概況

  簡稱API(ApplicaonProgrammingInterface),就是軟件系統(tǒng)不同組成部分銜接的約定。

  在數(shù)據(jù)封裝時(shí),網(wǎng)絡(luò)分層中的每個(gè)層相互之間會用接口進(jìn)行交互并提供服務(wù),其中應(yīng)用層與用戶之間的接口稱之為應(yīng)用程序接口。API實(shí)際上是一種功能集合,也可說是定義、協(xié)議的集合,無論是那種集合,它的實(shí)質(zhì)都是通過抽象為用戶屏蔽實(shí)現(xiàn)上的細(xì)節(jié)和復(fù)雜性。

  從用戶角度看應(yīng)用程序接口,表現(xiàn)為一系列API函數(shù),用戶可以使用這些函數(shù)進(jìn)行網(wǎng)絡(luò)應(yīng)用程序開發(fā)。從網(wǎng)絡(luò)角度看,應(yīng)用程序接口給用戶提供了一組方法,用戶可以使用這組方法向應(yīng)用層發(fā)送業(yè)務(wù)請求、信息和數(shù)據(jù),網(wǎng)絡(luò)中的各層則依次響應(yīng),最終完成網(wǎng)絡(luò)數(shù)據(jù)傳輸。

什么是應(yīng)用程序接口_應(yīng)用程序接口有什么作用

  API的作用:

  1.遠(yuǎn)程過程調(diào)用(RPC):通過作用在共享數(shù)據(jù)緩存器上的過程(或任務(wù))實(shí)現(xiàn)程序間的通信。

  2.標(biāo)準(zhǔn)查詢語言(SQL):是標(biāo)準(zhǔn)的訪問數(shù)據(jù)的查詢語言,通過通用數(shù)據(jù)庫實(shí)現(xiàn)應(yīng)用程序間的數(shù)據(jù)共享。

  3.文件傳輸:文件傳輸通過發(fā)送格式化文件實(shí)現(xiàn)應(yīng)用程序間數(shù)據(jù)共享。

  4.信息交付:指松耦合或緊耦合應(yīng)用程序間的小型格式化信息,通過程序間的直接通信實(shí)現(xiàn)數(shù)據(jù)共享。

  原理:

  API是一些預(yù)先定義的函數(shù),目的是提供應(yīng)用程序與開發(fā)人員基于某軟件或硬件得以訪問一組例程的能力,而又無需訪問源碼,或理解內(nèi)部工作機(jī)制的細(xì)節(jié)。

  常見應(yīng)用程序接口

  應(yīng)用層的應(yīng)用程序接口有很多,并且發(fā)展很快,比較常見的如socket、FTP、HTTP以及telnet。這些接口從大類上可分為四類:

  遠(yuǎn)程過程調(diào)用(RPC,Remote Procedure Call Protocol)

  數(shù)據(jù)查詢接口

  文件類接口

  數(shù)據(jù)通信接口

  例如FTP協(xié)議就是文件類接口,基于FTP,用戶可以實(shí)現(xiàn)文件在網(wǎng)絡(luò)間的共享和傳輸。而Socket和HTTP可歸結(jié)為數(shù)據(jù)通信接口,基于這兩種接口,用戶可以開發(fā)網(wǎng)絡(luò)通信應(yīng)用程序,以及web頁面交互程序。當(dāng)然如果從編程開發(fā)角度看,無論是FTP、HTTP還是telnet,都是基于socket接口開發(fā)出來的應(yīng)用層協(xié)議,是對socket接口的進(jìn)一步封裝和抽象,從而為用戶提供更高一層的服務(wù)和接口。

  socket有時(shí)稱之為“Berkeley Socket”,它是最早由伯克利開發(fā)的應(yīng)用程序接口。常用的socket類型有兩種:流式socket(SOCK_STREAM)和數(shù)據(jù)報(bào)式socket(SOCK_DGRAM)。

  流式socket是一種面向連接的socket,針對于面向連接的TCP服務(wù)應(yīng)用。

  數(shù)據(jù)報(bào)式socket是一種無連接的socket,對應(yīng)于無連接的UDP服務(wù)應(yīng)用。

  從用戶接口意義上講,還有傳輸層的TLI接口,是由AT&T開發(fā)的,有時(shí)也稱作X。它是傳輸層為用戶提供的應(yīng)用程序接口,可以用來在傳輸層進(jìn)行應(yīng)用開發(fā)。

  API之主要目的是提供應(yīng)用程序與開發(fā)人員以訪問一組例程的能力,而又無需訪問源碼,或理解內(nèi)部工作機(jī)制的細(xì)節(jié)。提供API所定義的功能的軟件稱作此API的實(shí)現(xiàn)。API是一種接口,故而是一種抽象。

#e#

  以下部分包含應(yīng)用程序接口的一般說明

  每個(gè)應(yīng)用程序應(yīng)該通過兩個(gè)步驟使用主站:

  配置 請求主站并應(yīng)用配置。 例如,創(chuàng)建域,配置從屬并注冊PDO條目(請參見第3.1節(jié))。

  運(yùn)行運(yùn)行循環(huán)代碼和交換過程數(shù)據(jù)(參見第3.2節(jié))。

  應(yīng)用程序示例 在主站代碼的examples /子目錄中有一些示例應(yīng)用程序。 它們被記錄在源代碼中。

  3.1 主站配置

  總線配置通過應(yīng)用程序接口提供。圖3.1給出了可由應(yīng)用程序配置的對象的概述。

  總線配置通過應(yīng)用程序接口提供。圖3.1給出了可由應(yīng)用程序配置的對象的概述。

 

什么是應(yīng)用程序接口_應(yīng)用程序接口有什么作用

  3.1.1 從站配置

  應(yīng)用程序必須告訴主站有關(guān)預(yù)期的總線拓?fù)?。這可以通過創(chuàng)建“從站配置”來完成。從站配置可以看作是預(yù)期的從站設(shè)備。當(dāng)創(chuàng)建從站配置時(shí),應(yīng)用程序提供總線位置(見下文),供應(yīng)商ID和產(chǎn)品代碼。

  當(dāng)應(yīng)用總線配置時(shí),主站會檢查,在給定位置是否存在給定供應(yīng)商ID和產(chǎn)品代碼的從站。如果存在,從站配置將“附加”到總線上的實(shí)際從站,并根據(jù)應(yīng)用程序提供的設(shè)置配置從站。從站配置的狀態(tài)可以通過應(yīng)用程序接口或通過命令行工具查詢。

  從站位置 從站位置必須指定為“別名”和“位置”的元組。允許通過絕對總線位置或通過保存的稱為“別名”的標(biāo)識符或兩者的混合來對從站尋址。別名是存儲在從站E2PROM中的16位值。它可以通過命令行工具進(jìn)行修改。表3.1顯示了如何解釋這些值。

  別名位置解釋

  00-65535位置尋址。 位置參數(shù)被解釋為總線中的絕對環(huán)位置。

  1-655350-65535別名尋址。 位置參數(shù)被解釋為在具有給定別名地址的第一從站之后的相對位置。

  圖3.2顯示了如何連接從站配置的示例。添加了一些配置,而其他配置保持分離。下面的列表給出了從最高開始的各從站配置的原因。

 

什么是應(yīng)用程序接口_應(yīng)用程序接口有什么作用

  1. 別名為0意味著使用簡單的位置尋址。 從站1存在,并且供應(yīng)商ID和產(chǎn)品代碼與預(yù)期值匹配。

  2. 雖然找到了位置為0的從站,但產(chǎn)品代碼不匹配,因此不添加配置。

  3. 別名非0,因此使用別名尋址。 從站2是別名為0x2000的第一個(gè)從機(jī)。 由于位置值為0,因此使用相同的從站。

  4. 沒有具有給定別名的從站,因此無法添加配置。

  5. 從站2再次是別名為0x2000的第一個(gè)從機(jī),但位置現(xiàn)在為1,因此添加從站3。

  如果主站源代碼配置了–enable-wildcards,則0xffffffff將匹配任何一個(gè)供應(yīng)商ID和/或產(chǎn)品代碼。

  3.2 循環(huán)操作

  要進(jìn)入循環(huán)操作模式,必須“激活”主站來計(jì)算過程數(shù)據(jù)映像,并首次循環(huán)操作時(shí)應(yīng)用總線配置。激活后,應(yīng)用程序負(fù)責(zé)發(fā)送和接收幀。激活后無法更改配置。

  3.3 VoE處理程序

  在配置階段,應(yīng)用程序可以創(chuàng)建第6.3節(jié)中描述的VoE郵箱協(xié)議的處理程序。一個(gè)VoE處理程序總是屬于某個(gè)從站配置,因此創(chuàng)建函數(shù)是從站配置的一個(gè)方法。

  VoE處理器管理VoE數(shù)據(jù)和用于發(fā)送和接收VoE消息的數(shù)據(jù)報(bào)。它包含傳輸VoE消息所需的狀態(tài)機(jī)。

  VoE狀態(tài)機(jī)一次只能處理一個(gè)操作。因此,一次可以進(jìn)行一個(gè)讀或?qū)懖僮?。操作啟動后,處理程序必須循環(huán)執(zhí)行,直到完成。之后,可以檢索操作的結(jié)果。

  VoE處理程序具有自己的數(shù)據(jù)報(bào)結(jié)構(gòu),它將被標(biāo)記,用于在每個(gè)執(zhí)行步驟之后進(jìn)行交換。因此,應(yīng)用程序可以決定在發(fā)送相應(yīng)的EtherCAT幀之前執(zhí)行多少個(gè)處理程序。

  有關(guān)使用VoE處理程序的更多信息,請參閱examples /目錄中提供的應(yīng)用程序接口函數(shù)和示例應(yīng)用程序的文檔。

  3.4并發(fā)主站訪問

  在某些情況下,一個(gè)主站由多個(gè)實(shí)例使用,例如,當(dāng)應(yīng)用程序執(zhí)行循環(huán)過程數(shù)據(jù)交換的同時(shí)時(shí),存在支持EoE的從站需要與內(nèi)核交換以太網(wǎng)數(shù)據(jù)(參見第6.1節(jié))。為此,主站是共享資源,并且對其的訪問必須被順序化。這通常通過鎖定信號量或其他方法保護(hù)關(guān)鍵部分來完成。

  主站本身不能提供鎖定機(jī)制,因?yàn)樗鼪]有機(jī)會知道合適的鎖定類型。例如,如果應(yīng)用程序在內(nèi)核空間中并且使用RTAI功能,則普通內(nèi)核信號量將是不夠的。為此,作出了一個(gè)重要的設(shè)計(jì)決定:預(yù)定主站的應(yīng)用程序必須具有完全控制,因此它必須負(fù)責(zé)提供適當(dāng)?shù)逆i定機(jī)制。如果另一個(gè)實(shí)例想要訪問主站,它必須通過回調(diào)請求總線訪問,這必須由應(yīng)用程序提供。此外,如果應(yīng)用程序認(rèn)為實(shí)例在當(dāng)時(shí)是不合適的,則可以拒絕對主機(jī)的訪問。

  圖3.3示例顯示了兩個(gè)進(jìn)程如何共享一個(gè)主站:應(yīng)用程序的循環(huán)任務(wù)使用主站進(jìn)行過程數(shù)據(jù)交換,而主站內(nèi)部EoE進(jìn)程使用主站與具有EoE功能的從站通信。兩者都不時(shí)訪問總線,但EoE進(jìn)程通過“請求”應(yīng)用程序

  訪問總線。這樣,應(yīng)用程序可以使用適當(dāng)?shù)逆i定機(jī)制來避免同時(shí)訪問總線。有關(guān)如何使用這些回調(diào),請參閱應(yīng)用程序接口文檔(第3章)。

 

什么是應(yīng)用程序接口_應(yīng)用程序接口有什么作用

  3.5 分布式時(shí)鐘

  從版本1.5開始,主站支持EtherCAT的“分布式時(shí)鐘”功能??梢詫⒖偩€上的從站時(shí)鐘同步到“參考時(shí)鐘”(支持DC的第一從站的本地時(shí)鐘),并且將參考時(shí)鐘同步到“主站時(shí)鐘”(主站的本地時(shí)鐘)??偩€上的所有其他時(shí)鐘(在參考時(shí)鐘之后)被視為“從站時(shí)鐘”(見圖3.4)。

什么是應(yīng)用程序接口_應(yīng)用程序接口有什么作用

  本地時(shí)鐘 任何支持DC的EtherCAT從站都有一個(gè)具有納秒分辨率的本地時(shí)鐘寄存器。如果從站被供電,則時(shí)鐘從零開始,這意味著當(dāng)從站在不同時(shí)間上電時(shí),它們的時(shí)鐘將具有不同的值。這些“偏移”必須通過分布式時(shí)鐘機(jī)制來補(bǔ)償。另一方面,時(shí)鐘不是以相同的速度精確地運(yùn)行,因?yàn)樗褂玫氖卧哂泄逃械念l率偏差。該偏差通常非常小,但是在較長時(shí)間段內(nèi),誤差將累積,而且本地時(shí)鐘之間的差異將增大。這個(gè)時(shí)鐘“漂移”也必須由DC機(jī)制補(bǔ)償。

  應(yīng)用程序時(shí)間 總線的公共時(shí)基必須由應(yīng)用程序提供。 使用此應(yīng)用程序時(shí)間的tapp

  1. 以配置從站的時(shí)鐘偏移(見下文),

  2. 以編程從器件的同步脈沖產(chǎn)生的開始時(shí)間(見下文),

  3. 以將參考時(shí)鐘同步到主時(shí)鐘(可選)。

  偏移補(bǔ)償 對于偏移補(bǔ)償,每個(gè)從站提供一個(gè)“系統(tǒng)時(shí)間偏移”寄存器toff,它被添加到內(nèi)部時(shí)鐘值TInt以獲得“系統(tǒng)時(shí)間”tsys:

  tsys = TInt + toff

  ? tint = tsys ? toff

  主站讀取兩個(gè)寄存器的值,以某種方式計(jì)算新的系統(tǒng)時(shí)間偏移,結(jié)果系統(tǒng)時(shí)間應(yīng)與主機(jī)的應(yīng)用時(shí)間tapp匹配:

  tsys ? tapp

  ? tint + toff ? tapp

  ? toff = tapp ? tint

  ? toff = tapp ?( tsys ? toff )

  ? toff = tapp ? tsys + toff

  由讀取和寫入寄存器的不同時(shí)間產(chǎn)生的小的時(shí)間偏移誤差將由漂移補(bǔ)償進(jìn)行補(bǔ)償。

  漂移補(bǔ)償 由于每個(gè)支持DC的從站中有特殊機(jī)制,因此可以進(jìn)行漂移補(bǔ)償:對“系統(tǒng)時(shí)間”寄存器的寫操作將使得內(nèi)部時(shí)間控制循環(huán)對寫入時(shí)間(減去編程的傳輸延遲,見下文)與當(dāng)前系統(tǒng)時(shí)間進(jìn)行比較。計(jì)算出的時(shí)間誤差將用作時(shí)間控制器的輸入,根據(jù)誤差的符號將本地時(shí)鐘速度調(diào)整為稍快或慢一些2。

  傳輸延遲 以太網(wǎng)幀從從站到從站需要少量時(shí)間。所得的傳輸延遲時(shí)間累積在總線上,并且可以達(dá)到微秒級別,因此在漂移補(bǔ)償期間必須被考慮。支持DC的EtherCAT從站提供一種測量傳輸延遲的機(jī)制:對于四個(gè)從站端口中的每一個(gè),有一個(gè)接收時(shí)間寄存器。從對端口0的接收時(shí)間寄存器的寫操作開始測量,一旦在相應(yīng)端口上接收到幀,則當(dāng)前系統(tǒng)時(shí)間被鎖存并存儲在接收時(shí)間寄存器中。主站可以讀出相對接收時(shí)間,然后計(jì)算從站之間的時(shí)間延遲(使用主站對總線拓?fù)涞亩x),最后計(jì)算從參考時(shí)鐘到每個(gè)從機(jī)的時(shí)間延遲。這些值通過編程被寫到從站的傳輸延遲寄存器中。以這種方式,漂移補(bǔ)償可以達(dá)到納秒級同步。

  檢查同步性 支持DC的從站在地址0x092c處提供32位“系統(tǒng)時(shí)間差”寄存器,其中最后一次漂移補(bǔ)償?shù)南到y(tǒng)時(shí)間差以納秒分辨率和符號-幅值編碼方式存儲3。為了檢查總線同步性,系統(tǒng)時(shí)間差寄存器也可以通過命令行工具循環(huán)讀取(見第7.1.14節(jié)):、

  $ watch -n0 “ethercat reg read -p4 -tsm32 0x92c”

  同步信號 同步時(shí)鐘是總線上同步事件的先決條件。每個(gè)支持DC的從站提供兩個(gè)“同步信號”,其可以被編程以創(chuàng)建事件,這將,例如,使得從站應(yīng)用程序在某個(gè)時(shí)刻鎖存其輸入。同步事件可以一次生成或循環(huán)生成,取決于哪種對從站應(yīng)用程序有意義。編程同步信號設(shè)置所謂的“AssignActivate”字和同步信號的周期和移位時(shí)間。AssignActivate字是從站確定的,并且必須取自XML從站描述(Device→ Dc),其中還可以找到典型的同步信號配置“ OpModes”。

  1如果需要同時(shí)發(fā)送和接收,則可以為從配置創(chuàng)建兩個(gè)VoE處理程序。

  2本地從時(shí)鐘將每10 ns以9 ns,10 ns或 11 ns的頻率遞增。

  3這允許廣播讀取總線上的所有系統(tǒng)時(shí)間差寄存器以獲得向上近似



大肉蜜桃婷婷黑料| 色综合久久91| 亚洲一区激情网| 国模杨依粉嫩蝴蝶150P| 夜夜操天天打| 国产免费试看片| 久久99久久99精品免费看| xxXxX爱欧美| 精品国产亚洲人成在线| 久久精品一 二 三区| 国产成人一区二区三区电影| 欧美一级黄色录像一| 免费无码AV一区二区波多野结衣 | 久久久久久久女人18| 精品毛片| 一区2区日韩网站| 久久久国产精品无码1区2区| 欧洲一级精品免费视频| 七月婷婷久久| 精品人妻大屁股白浆无码 | 黄页大全视频在线观看| 日韩中文无码一区二区三区| 亚洲电影1区2区| 日韩在线下卡| 四虎影院在线播放地址| 色婷婷亚洲精选| 色综合久久综合网小说| 国产区区区久久久久| 色欲欧美在线| 92精品成人观看免费| 成在人线av无码完费高潮水 | 色综合天天综合网国产成人网| 午夜福利视频无码一区二区三区| 国产AV电影网| 精品久久久污| 五月六月婷婷色| 日本黄色片一级片区| 网免费看18| …日韩人妻无码精品一专区 | 老司机好色av| 日韩中文一区在线|