freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

word版可編輯-嵌入式web服務(wù)器設(shè)計(jì)精心整理doc-文庫(kù)吧資料

2025-07-21 11:59本頁(yè)面
  

【正文】 BCC = armlinuxgcc g O2 改成: BCC = gcc g O2 將下面的這行: sqlite3$(TEXE): $(TOP)/src/ .libs/ 改成: sqlite3$(TEXE): $(TOP)/src/ .libs/ 將下面這行:o $ $(TOP)/src/ .libs/\改成:o $ $(TOP)/src/ .libs/libsqlite3. a\其編譯成靜態(tài)鏈接的形式。在SQL語(yǔ)句被分析之后,代碼生成器將分析樹翻譯成一個(gè)袖珍程序, 隨后這些袖珍程序又被組合成用VDBE的虛擬機(jī)器語(yǔ)言表示的一系列指令。體系結(jié)構(gòu)的核心是虛擬數(shù)據(jù)庫(kù)引擎(VDBE)。頁(yè)面緩沖主要處理讀、寫以及B-樹存儲(chǔ)機(jī)制所需的數(shù)字緩沖,包括為了保證事務(wù)原子性的回退及提交操作所需的緩沖。在虛擬機(jī)和低層存儲(chǔ)、恢復(fù)程序之間,SQLite使用了一個(gè)抽象層執(zhí)行B樹,頁(yè)面緩沖(Pager),和操作系統(tǒng)接口(OS Interface)。但是檸檬分析器可以更快速地生成高效的代碼,并有效地防止資源的泄漏。從接口接收到命令后傳到SQL命令處理器(SQL Command Processor),SQL命令處理器是由三個(gè)獨(dú)立的步驟組成:標(biāo)志處理器(Tokenizer)、分析器(Parser)、代碼生成器(Code Generator)。SQL數(shù)據(jù)庫(kù)儲(chǔ)存在單一磁盤文件中,可以在不同字節(jié)順序的機(jī)器間自由共享,支持?jǐn)?shù)據(jù)庫(kù)大小至2TB。 *功能完善:支持ACID事務(wù),既保證了數(shù)據(jù)的完整性,也會(huì)提高運(yùn)行速度。 *體積較小,速度快:全部源碼大約3萬(wàn)行C代碼,250KB。SQLite在體積與功能之間做到了較好的平衡,是理想的嵌入式數(shù)據(jù)庫(kù)。SQLite 支持跨平臺(tái),操作簡(jiǎn)單,能夠使用很多語(yǔ)言直接創(chuàng)建數(shù)據(jù)庫(kù)。和Mysql、PostgreSQL兩款世界著名的開(kāi)源數(shù)據(jù)庫(kù)管理系統(tǒng)相比,它的處理速度要快。它占用資源非常低,在嵌入式設(shè)備中,只需要幾百K的內(nèi)存就夠了。安裝下載后就可以在ARM上運(yùn)行Apache服務(wù)器了。./gen_uri_delims : gen_test_char重點(diǎn)是利用交叉編譯器編譯源代碼,需要利用在本地編譯器編譯生成的工具生成后續(xù)編譯需要的頭文件。準(zhǔn)備安裝WEB服務(wù)器時(shí)Apache無(wú)疑是最佳選擇。Apache的特點(diǎn)是簡(jiǎn)單、速度快、性能穩(wěn)定,并可做代理服務(wù)器來(lái)使用。它源于NCSAd服務(wù)器,經(jīng)過(guò)多次修改,成為世界上最流行的WEB服務(wù)器軟件之一。將Apache、SQLite、PHP編譯安裝到ARM上進(jìn)行調(diào)試、配置,使其能夠正常工作,三者間能夠通信,重點(diǎn)是在ARM上安裝SQLite和Apache。其中,Apache是一個(gè)運(yùn)行在類UNIX系統(tǒng)中的小型WEB服務(wù)器開(kāi)源軟件。如上所述,為了進(jìn)一步擴(kuò)展嵌入式WEB服務(wù)器的功能,以提供對(duì)數(shù)據(jù)資源的處理能力,采用了以ARM9微處理器+嵌入式Linux操作系統(tǒng)做嵌入式WEB服務(wù)器平臺(tái)。而隨著市場(chǎng)上各種信息產(chǎn)品功能的不斷豐富,人們開(kāi)始要求能通過(guò)嵌入式WEB服務(wù)器對(duì)這些產(chǎn)品的數(shù)據(jù)信息進(jìn)行管理、共享、向設(shè)備發(fā)送命令等。在其基礎(chǔ)上進(jìn)行功能擴(kuò)展,可實(shí)現(xiàn)遠(yuǎn)程控制功能。下載調(diào)試 使用 NFS 服務(wù)方式將 HTTPD下載到開(kāi)發(fā)板上 [/mnt/yaffs]cd /host/exp/basic/09_d/ [/host/exp/basic/09_d]./d starting d... press q to quit. wait for connection. 客戶端驗(yàn)證在PC機(jī)的瀏覽器中輸入開(kāi)發(fā)板的IP地址: //,啟動(dòng)ARM中的WEB服務(wù)器,服務(wù)器向?yàn)g覽器發(fā)送編寫好的靜態(tài)網(wǎng)頁(yè),測(cè)試網(wǎng)頁(yè)是經(jīng)過(guò)改動(dòng)的Google搜索頁(yè)面,上面顯示了本論文的題目—Embedded Web IE顯示結(jié)果 性能分析上述服務(wù)器能夠顯示預(yù)先存儲(chǔ)的靜態(tài)HTML網(wǎng)頁(yè),如果有多張網(wǎng)頁(yè),在服務(wù)器程序中加入鏈接程序即可,通過(guò)點(diǎn)擊主頁(yè)上的按鈕鏈接到所需要的頁(yè)面上。在共享目錄下將d通過(guò)nfs方式下載到開(kāi)發(fā)板上,用Google搜索的網(wǎng)頁(yè)進(jìn)行測(cè)試。首先將實(shí)驗(yàn)箱通過(guò)串口線和網(wǎng)線掛載到PC機(jī)上,啟動(dòng)mini進(jìn)入ARM上的主目錄。: web服務(wù)器流程圖(程序及注釋見(jiàn)附錄)、編譯文件makefile及Google搜索頁(yè)面的HTML表單。SOCKET在80端口進(jìn)行監(jiān)聽(tīng)連接請(qǐng)求。: 主程序是系統(tǒng)的總?cè)肟冢彩窍到y(tǒng)的主要控制函數(shù)。然后,服務(wù)器執(zhí)行與被動(dòng)打開(kāi)有關(guān)的初始步驟:創(chuàng)建一個(gè)套接字,將它綁定到本地地址;然后設(shè)置允許同時(shí)連接的最大數(shù);最后,主循環(huán)等待遠(yuǎn)端主機(jī)與它連接,當(dāng)遠(yuǎn)端有一臺(tái)主機(jī)試圖與它連接時(shí),它就接收并輸出連接上送來(lái)的字符。首先,它填入自己的端口號(hào)(S E RV E R _ PORT)構(gòu)造地址數(shù)據(jù)結(jié)構(gòu)。Socket也具有一個(gè)類似于打開(kāi)文件的函數(shù)調(diào)用Socket(),該函數(shù)返回一個(gè)整型的Socket描述符,隨后的連接建立、數(shù)據(jù)傳輸?shù)炔僮鞫际峭ㄟ^(guò)該Socket實(shí)現(xiàn)的。Socket接口還定義了許多函數(shù)或例程,可以用它們來(lái)開(kāi)發(fā)TCP/IP網(wǎng)絡(luò)上的應(yīng)用程序。Socket接口是TCP/IP網(wǎng)絡(luò)的API,可將其看作是本地應(yīng)用進(jìn)程與網(wǎng)絡(luò)的接入點(diǎn)。在客戶端使用Socket對(duì)網(wǎng)絡(luò)上某一個(gè)服務(wù)器的某一個(gè)端口發(fā)出連接請(qǐng)求,一旦連接成功,打開(kāi)會(huì)話;會(huì)話完成后,關(guān)閉Socket。服務(wù)器通過(guò)調(diào)用以下三個(gè)操作來(lái)完成打開(kāi): int bind(int socket,struct sockaddr *address,int addr_len)int listen(int socket,int backlog)int accept(int socket,struct sockaddr *address,int *addr_len) 如前所述,TCP/IP協(xié)議的應(yīng)用一般采用客戶端/服務(wù)器模式,因此在實(shí)際應(yīng)用中,必須有客戶端和服務(wù)器兩個(gè)進(jìn)程,并且首先啟動(dòng)服務(wù)器,: 開(kāi)發(fā)一個(gè)ServerClient模型的程序開(kāi)發(fā)原理大致如下:服務(wù)器使用ServerSocket監(jiān)聽(tīng)指定的端口,端口可以隨意指定。5.4.新進(jìn)程處理此客戶請(qǐng)求,并不需要對(duì)其它請(qǐng)求作出應(yīng)答。 首先服務(wù)器方先啟動(dòng),根據(jù)請(qǐng)求提供相應(yīng)服務(wù):,它愿意在某一公認(rèn)地址上接收客戶請(qǐng)求;;,處理該請(qǐng)求并發(fā)送應(yīng)答信號(hào)。嵌入式客戶端/服務(wù)器模式在操作過(guò)程中采取的是主動(dòng)請(qǐng)求方式,服務(wù)器必須首先啟動(dòng),直到它執(zhí)行完accept()調(diào)用,進(jìn)入等待狀態(tài)后,方能接收客戶請(qǐng)求。從WEB服務(wù)器查詢嵌入式數(shù)據(jù)庫(kù)遵循以下基本步驟:4 簡(jiǎn)單嵌入式WEB服務(wù)器設(shè)計(jì) 簡(jiǎn)單嵌入式WEB服務(wù)器完成功能簡(jiǎn)單,但是包含了WEB服務(wù)器必須有的所有部分。PHP程序依據(jù)標(biāo)準(zhǔn)輸入或環(huán)境變量向數(shù)據(jù)庫(kù)服務(wù)器提出查詢要求,執(zhí)行相應(yīng)的SQL語(yǔ)句。WEB服務(wù)器Apache在前臺(tái)運(yùn)行,當(dāng)客戶機(jī)提出一個(gè)查詢請(qǐng)求的時(shí)候,WEB服務(wù)器運(yùn)行一個(gè)應(yīng)用程序?qū)?shù)據(jù)庫(kù)進(jìn)行操作,并把結(jié)果傳送給客戶機(jī),客戶機(jī)的瀏覽器得到數(shù)據(jù)后將最終結(jié)果顯示給用戶。當(dāng)查詢完成后,將結(jié)果加上HTML的格式命令輸出到服務(wù)器上,WEB服務(wù)器將該HTML文件發(fā)送給瀏覽器?! EB服務(wù)器Apache用HTML語(yǔ)言中的文檔或表格方式向引擎?zhèn)鬟f從WEB頁(yè)接收到的查詢參數(shù)(如人名、地名、主題詞、分類號(hào)等)。 Apache+SQLite+PHP系統(tǒng)嵌入式WEB服務(wù)器Apache與數(shù)據(jù)庫(kù)SQLite的連接由PHP引擎實(shí)現(xiàn)。這些就是瘦WEB服務(wù)器的要求。HTML頁(yè)面內(nèi)容一般是通過(guò)存儲(chǔ)在ROM中的壓縮文件,由快速運(yùn)行的代碼動(dòng)態(tài)產(chǎn)生。WEB服務(wù)器可以被用作一個(gè)單一線程,而不需要RTOS的支持,或者是當(dāng)使用RTOS時(shí)作為多線程應(yīng)用的一個(gè)線程,不需要?jiǎng)討B(tài)存儲(chǔ)分配。在嵌入式設(shè)備中,一個(gè)WEB服務(wù)器不可能很全面,它必須擁有足夠小的體積,并且不影響嵌入式系統(tǒng)的整體性能,但又必須具備一個(gè)WEB服務(wù)器應(yīng)有的特征。在收到瀏覽器的確認(rèn)后,WEB 服務(wù)器進(jìn)程就釋放與瀏覽器的連接,該進(jìn)程也隨即結(jié)束,或被返回緩沖池,從而完成一個(gè)請(qǐng)求處理。WEB 服務(wù)器進(jìn)程首先與瀏覽器建立連接。服務(wù)器方有一個(gè)常駐的守候進(jìn)程(Daemon),該進(jìn)程開(kāi)機(jī)后就由操作系統(tǒng)創(chuàng)建,并一直處于就緒狀態(tài),專門監(jiān)聽(tīng)來(lái)自各個(gè)端口的外來(lái)請(qǐng)求。但嵌入式WEB服務(wù)器功能單一,訪問(wèn)用戶不會(huì)很多,僅限于管理員,從占用內(nèi)存資源角度考慮。建立每個(gè)請(qǐng)求和產(chǎn)生每個(gè)TCP連接需要占用大量的CPU和內(nèi)存資源。HTTP協(xié)議是WEB應(yīng)用的標(biāo)準(zhǔn)協(xié)議,性能有很大改變,增加了緩存功能,同時(shí)也是TCP連接形式的改變。又例如CMX公司的MicroNet TCP/IP,它是為8位或16位微處理器而設(shè)計(jì)的,支持大部分的標(biāo)準(zhǔn)協(xié)議,連接方式有以太網(wǎng)連接、拔號(hào)連接和直接連接方式。所以研究嵌入式TCP/IP協(xié)議棧以滿足嵌入式系統(tǒng)的性能要求是很重要的,應(yīng)盡量減小TCP/IP協(xié)議棧而又不失一般的標(biāo)準(zhǔn)性。 嵌入式TCP/IP協(xié)議棧標(biāo)準(zhǔn)的TCP/IP協(xié)議棧,包括TCP、IP、ICMP、RARP等,對(duì)嵌入式Internet系統(tǒng)的大量使用有著很重要的意義。一旦接收了一個(gè)連接,Accept會(huì)返回一個(gè)新的套接口描述符,主進(jìn)程則開(kāi)辟一個(gè)新的子進(jìn)程來(lái)處理這個(gè)新的連接,這樣系統(tǒng)可以同時(shí)接受來(lái)自多個(gè)客戶端的請(qǐng)求。它是一種面向連接的、可靠的、基于字節(jié)流的運(yùn)輸層通信協(xié)議。而使用TCP協(xié)議就不同了,在該協(xié)議傳輸模式中在將數(shù)據(jù)包成功發(fā)送給目標(biāo)計(jì)算機(jī)后,TCP會(huì)要求發(fā)送一個(gè)確認(rèn);如果在某個(gè)時(shí)限內(nèi)沒(méi)有收到確認(rèn),那么TCP將重新發(fā)送數(shù)據(jù)包。 TCP協(xié)議 Transmission Control Protocol(傳輸控制協(xié)議)該協(xié)議主要用于在主機(jī)間建立一個(gè)虛擬連接,以實(shí)現(xiàn)高可靠性的數(shù)據(jù)包交換。這些信息的主要作用是請(qǐng)求駐留在服務(wù)器上的特定文檔。超鏈(Hyperlink)文檔加上超鏈就構(gòu)成超文本。 HTTP協(xié)議 HTTP(Hypertext Transfer Protocol,超文本傳輸協(xié)議)是WEB 服務(wù)器能夠理解的一種語(yǔ)言,因此有時(shí)也稱WEB服務(wù)器為HTTP服務(wù)器。TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協(xié)議/網(wǎng)際協(xié)議)是最早出現(xiàn)的傳輸協(xié)議。當(dāng)請(qǐng)求為靜態(tài)文本時(shí),文檔直接提交輸出模塊輸出;請(qǐng)求為動(dòng)態(tài)文本時(shí),請(qǐng)求解析模塊自動(dòng)調(diào)用腳本引擎模塊,將腳本替換為現(xiàn)場(chǎng)數(shù)據(jù),再提交輸出模塊輸出;當(dāng)請(qǐng)求為帶參數(shù)的執(zhí)行命令時(shí),請(qǐng)求解析器調(diào)用命令執(zhí)行模塊分析命令并控制監(jiān)控前端。偵聽(tīng)模塊在接收到一個(gè)連接請(qǐng)求后,讀取用戶的請(qǐng)求,進(jìn)行處理,再交給解析模塊進(jìn)行解析。建立連接后,服務(wù)器和客戶機(jī)之間就可以進(jìn)行通信了。 嵌入式WEB服務(wù)器的工作方式 WEB服務(wù)器的工作方式都是以套接字(Socket)機(jī)制為基礎(chǔ)的。由于用戶能傳遞不同的參數(shù)給 CGI腳本,所以CGI技術(shù)使得瀏覽器和服務(wù)器之間具有交互性。 HTTP示意圖CGI(通用網(wǎng)關(guān)接口)定義了WEB服務(wù)器與CGI 腳本之間的接口標(biāo)準(zhǔn)。 HTTP (超文本傳輸協(xié)議)是 WEB 服務(wù)器用來(lái)與瀏覽器通信的協(xié)議, HTTP 規(guī)定了發(fā)送和處理請(qǐng)求的標(biāo)準(zhǔn)方式, 規(guī)定了瀏覽器和服務(wù)器之間傳輸?shù)南⒏袷郊案鞣N控制信息, 從而定義了所有 WEB 通信的基本框架。而微型處理器負(fù)責(zé)全面的管理控制。 以太網(wǎng)接口實(shí)現(xiàn)與 Internet連接。 一個(gè)完整的嵌入式WEB服務(wù)器硬件系統(tǒng)必須具備 FLASH ROM存儲(chǔ)器,用來(lái)存儲(chǔ)實(shí)時(shí)操作系統(tǒng)的系統(tǒng)內(nèi)核、TCP/IP 協(xié)議棧、各種 WEB文檔。嵌入式WEB服務(wù)器是以瘦 TCP/IP 協(xié)議棧和嵌入式實(shí)時(shí)操作系統(tǒng)(ERTOS)為基礎(chǔ)構(gòu)建而成的, 使設(shè)備具有簡(jiǎn)單的網(wǎng)絡(luò)管理功能, 因此通過(guò)網(wǎng)絡(luò)就可以對(duì)接入到 Internet 上的設(shè)備進(jìn)行管理和控制。為實(shí)現(xiàn)動(dòng)態(tài)交互網(wǎng)頁(yè),完整的服務(wù)器還應(yīng)包含嵌入式數(shù)據(jù)庫(kù),用來(lái)存儲(chǔ)各種實(shí)時(shí)數(shù)據(jù)。由于嵌入式系統(tǒng)資源有限,特別是存儲(chǔ)資源,所以在嵌入式WEB服務(wù)器中只能應(yīng)用縮減版的只包含必須功能的嵌入式TCP/IP協(xié)議,相應(yīng)的服務(wù)器成為瘦WEB服務(wù)器,成為適合在資源有限的設(shè)備或環(huán)境中應(yīng)用的嵌入WEB服務(wù)器。3嵌入式WEB服務(wù)器的設(shè)計(jì)原理嵌入式WEB服務(wù)器工作是基于網(wǎng)絡(luò)通信協(xié)議傳輸信息的,本課題中用到的主要是TCP/IP協(xié)議、HTTP協(xié)議。本課題用的硬件平臺(tái)是基于ARM 體系結(jié)構(gòu),由北京博創(chuàng)科技有限公司開(kāi)發(fā)的UPNetARM2410S實(shí)驗(yàn)箱?,F(xiàn)在它廣泛應(yīng)用于PDA,移動(dòng)通信,路由器,工業(yè)控制等領(lǐng)域。 S3C2410X芯片簡(jiǎn)介 S3C2410X是一款由Samsung公司為手持設(shè)備設(shè)計(jì)的低功耗、高集成度的基于ARM920T核的微處理器。內(nèi)存要求是根據(jù)需要的應(yīng)用決定的,Linux 系統(tǒng)甚至可以僅使用 256 KB ROM 和 512 KB RAM 進(jìn)行工作。而 Linux 微內(nèi)核只占用其中很小一部分內(nèi)存,包括虛擬內(nèi)存和所有核心的操作系統(tǒng)功能在內(nèi),只需占用系統(tǒng)約 100 K 內(nèi)存。典型的 Linux 系統(tǒng)經(jīng)過(guò)打包,在擁有硬盤和大容量?jī)?nèi)存的 PC 機(jī)上運(yùn)行,嵌入式系統(tǒng)不需要這么高的配置。但是對(duì)于習(xí)慣于 Windows 操作系統(tǒng)的人來(lái)說(shuō),需要記憶大量的命令行參數(shù)卻是一個(gè)缺點(diǎn)。Linux 的安裝和管理比 Unix更加簡(jiǎn)單靈活。由于ARM920T有MMU,故可以直接移植標(biāo)準(zhǔn)的ARMLinux內(nèi)核。與其它操作系統(tǒng)相比,Linux還具有以下特色:采用階層式目錄結(jié)構(gòu),文件歸類清楚、容易管理;支持多種文件系統(tǒng),如Ext2,Ext3以及Windows的文件系統(tǒng)FAT16,FAT32,NTFS等;具有可移植性,系統(tǒng)核心只有小于10%的源代碼采用匯編語(yǔ)言編寫,其余均是采用C語(yǔ)言編寫,因此具備高度移植性;可與其他操作系統(tǒng)如Windows98/2000/XP等并存與同一臺(tái)計(jì)算機(jī)上。Unix內(nèi)核指的是操作系統(tǒng)底層的核心程序代碼。選擇Linux操作系統(tǒng)基于以下方面:1)
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1