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

正文內(nèi)容

基于嵌入式linux的點(diǎn)餐系統(tǒng)計(jì)算機(jī)科學(xué)與技術(shù)畢業(yè)論文-全文預(yù)覽

2024-12-06 05:43 上一頁面

下一頁面
  

【正文】 ld_back $ ln s /usr/local/arm/修改完成后回到 目錄下 $ ./configure prefix=/usr/local/arm/$ make $ make install 安裝成功后檢查目錄 /usr/local/arm/,include 中有 之類的頭文件, lib 中有 。 圖 Development Environment Option 選項(xiàng) 26 MiniGUI 編程基礎(chǔ) MiniGUI 的程序入口點(diǎn)是 MiniGUIMain()函數(shù),它負(fù)責(zé)創(chuàng)建程序的主窗口,類似 Windows 程序中的 WinMain()函數(shù)。 /*建立主窗口 */ hWnd=CreateMainWindows( amp。 27 /*將消息發(fā)送至該消息的目標(biāo)窗口的窗口過程(消息處理函數(shù)) */ DispatchMessage(amp。 EndPaint(hWnd,hdc)。 } } mSQL 及其配置與編譯 mSQL 簡介 MiniSQL(mSQL)是嵌入式數(shù)據(jù)庫家族中的佼佼者,它由澳大利亞的 David 開發(fā)。 詳情見參考文獻(xiàn) [4]。 mSQL 的安裝 安裝以源代碼方式發(fā)布的 mSQL 步驟: 用 tar 程序解開壓縮包 $ tar zxf 使用 setup 程序來設(shè)置后面的編譯選項(xiàng) $ ./setup 該命令會(huì)將一些編譯選項(xiàng)保存在 src/ 文件中。 編譯 mSQL 源程序 $ make all 安裝 mSQL $ make install 至此, mSQL 即被正確安裝在系統(tǒng)中。 System 段 Read_Only:設(shè)置服務(wù)器工作模式為只讀,拒絕任何修改數(shù)據(jù)庫的操作。 在本設(shè)計(jì)的實(shí)現(xiàn)中,移植 mSQL時(shí)出現(xiàn)了一些問題,特別是目標(biāo)板上原 libc庫與 libc庫版本不同。經(jīng)過對(duì)比發(fā)現(xiàn)了 libc庫大小為 3MB,而 libc庫大小為 4MB,為了減小根文件系統(tǒng)的大小,使其滿足嵌入式系統(tǒng)體積盡可能小的目標(biāo),故選用 libc庫。即可。通常 是用來建立數(shù)據(jù)表或是向服務(wù)器傳送 SQL 查詢命令。 mSQL select * from menu \g 圖 查詢語句 33 5 服務(wù)器與客戶端的設(shè)計(jì)與實(shí)現(xiàn) 本文的點(diǎn)菜系統(tǒng)分作兩部分完成,一部分是數(shù)據(jù)庫服務(wù)器,其主要功能是處理系統(tǒng)的所有數(shù)據(jù);另一部分是客戶 端 ,它是用戶與數(shù)據(jù)庫服務(wù)器的接口,提供了用戶操作服務(wù)器 的數(shù)據(jù)的界面。 31 圖 創(chuàng)建數(shù)據(jù)庫 圖 創(chuàng)建表 32 查詢表信息 對(duì)數(shù)據(jù)庫查詢操作都是通過 mSQL交互程序 msql 向服務(wù)器傳送 SQL查詢命令。 創(chuàng)建數(shù)據(jù)庫 服務(wù)器管理程序 msqladmin用于對(duì) mSQL服務(wù)器執(zhí)行管理操作,如建立新數(shù)據(jù)庫,關(guān)閉服務(wù)器、數(shù)據(jù)庫復(fù)制等。然后便能在目標(biāo)板正常運(yùn)行 mSQL服務(wù)器。 串口輸出錯(cuò)誤信息: $ ./msql3_broker:/lib/:version―‖ not found (required by /lib/) 由提示信息可知,是有關(guān) glibc庫版本的問題,查看開發(fā)板文 件系統(tǒng)中 lib庫目錄下的 glibc庫的版本號(hào),使用命令: $ string /lib/tls/ | grep GLIBC 在命令終端顯示 libc庫所支持的 GLIBC版本: 30 GLIBC_PRIVATE 可以看出根文件系統(tǒng)上的 libc庫最高只支持 ,不能滿足 對(duì) GLIBC的要求。 交叉編譯 mSQL 之前安裝 mSQL 時(shí)對(duì) src/ 文件作了簡單說明,交叉編譯時(shí)需修改此文件。以下說明一些重要的配置文件參數(shù): General 段 Inst_Dir: mSQL 安裝路徑 DB_Dir:用戶建立的 數(shù)據(jù)庫文件保存路徑 Msql_User: mSQL 服務(wù)器當(dāng)前用戶 TCP_Port: mSQL 服務(wù)器的 TCP 服務(wù)端口,默認(rèn)值為 1114。程序的默認(rèn)安裝路徑為 /usr/local/msql3。一個(gè)是單進(jìn)程的服務(wù)器 msql3d;另一個(gè)是多進(jìn)程的服務(wù)器 msql3_broker;多進(jìn)程版本服務(wù) 器則允許多個(gè)客戶端同時(shí)連上服務(wù)器,而且客戶端數(shù)目可設(shè)置。它自身結(jié)構(gòu)緊湊小巧, 占用 系統(tǒng)資源少。 /*終止消息循環(huán), MSG_QUITA 消息 */ PostQuitMessage(hWnd)。 } } /*消息處理函數(shù) */ static int HelloWinProc( HWND hWnd, int message, WPARAM wParam,LPARAM lParam) { switch ( message) { case MSG_PAINT: hdc=BeginPaint( hWnd) 。Msg,hWnd)) { TranslateMessage(amp。 介紹一個(gè)簡單的示例程序,該程序在窗口中輸出 ―Hello, world! ‖, 程序運(yùn)行結(jié)果如圖 顯示, 其部分源代碼如下 圖 MiniGUI 例子程序 int MiniGUIMain(int args, const char* arg[]) { MAINWINCREATE CreateInfo; /*初始化 MAINWINCREATE 結(jié)構(gòu),窗口的消息處理函數(shù)在此指定 */ InitCreateInfo(amp。 23 交叉編譯 png 庫 $ cp scripts/ Makefile $ vi Makefile 需要 修改 以下幾個(gè)地方: CC=armlinuxgcc prefix=/usr/local/arm/ZLIBLIB=/usr/local/arm/ZLIBINC=/usr/local/arm/保存,然后交叉 編譯 $ make $ make install 交叉編譯 jpeg 庫 $ ./configure enableshared enablestatic $ make clean 清除掉,然后執(zhí)行交叉編譯 $ ./configure prefix=/usr/local/arm/enableshared enablestatic $ make 安裝前需要在 armlinux 下建個(gè)目錄,不然安裝會(huì)出錯(cuò) $ mkdir –p /usr/local/arm/$ make install 交叉編譯 popt 庫 $ ./configure prefix=/usr/local/arm/enableshared enablestatic $ make $ make install 交叉編譯 libmingui MiniGUI 版本在鏈接 ljpeg、 lpng、 lttf 時(shí)總會(huì)鏈接 /usr/lib 下的庫,因此將 /usr/lib 下的庫換成 /usr/local/arm/: $ cd /usr/lib 24 $ mv $ln s/usr/local/arm/$ mv $ ln –s/usr/local/arm/$ mv $ ln –s/usr/local/arm/完成以上工作后就可以交叉編譯 libminigui 了 ,如圖 所示 : $ cd $ make menuconfig 圖 MiniGUI 配置界面 采用圖形界面配置,其他選項(xiàng)不再敘述,只強(qiáng)調(diào)非常重要的 Development Environment Option 選項(xiàng) ,編譯窗口如圖 所示 : 宿主機(jī)平臺(tái) (Linux) Platform 指定交叉編譯器 (armlinuxgcc) Compiler 25 使用的 GLIBC 庫 (glibc) Libc Installation options 交叉編譯的庫的安裝路徑 Path prefix: /usr/local/arm/ Additonal Compiler Flags CFLAGS: LDFLAGS: 退出,保存設(shè)置并安裝: $ make $ make install 安裝成功后 到 /usr/local/arm/,多了相應(yīng)的 、 、 。 因?yàn)镴XARM924101 目標(biāo)板實(shí)現(xiàn)了 FrameBuffer,可直接在目標(biāo)板上使用 FBCON 圖引擎而不必自己編寫。 為了使 MiniGUI 應(yīng)用程序能正確找到需要的 MiniGUI 函數(shù)庫,需要設(shè)置系統(tǒng)的默認(rèn)路徑,即修改 /etc/ 文件,在此文件的最后一行增加目錄―/usr/local/lib‖,然后保存文件。相關(guān)信息可訪問 網(wǎng)站。 21 4 本系統(tǒng)支撐軟件的構(gòu)建 本文所述的系統(tǒng)用到兩個(gè)主要的軟件,一個(gè)是 MiniGUI,另一個(gè)是 mSQL。由以 dev_base 為頭指針的設(shè)備鏈表來集體管理所有網(wǎng)路設(shè)備,其中每個(gè)元素代表一個(gè)網(wǎng)絡(luò)設(shè)備接口。 網(wǎng)絡(luò)驅(qū)動(dòng) Li nux 的網(wǎng)絡(luò)系統(tǒng)主要是基于 BSD Unix 的 socket 機(jī)制。 JXARM924101 開發(fā)板 Linux 顯示( FrameBuffer)驅(qū)動(dòng)程序 Linux 內(nèi)核啟動(dòng)時(shí)將自動(dòng)加載定義在 /linux/drivers/video/ 文件的FrameBuffer 驅(qū)動(dòng),它是由一個(gè)全局變量 fb_drivers 定義的,所以將 JXARM92410的顯示驅(qū)動(dòng)添加到 fb_drivers 中,以支持目標(biāo)板 FrameBuffer 驅(qū)動(dòng)。 FrameBuffer 幀緩沖設(shè)備 FrameBuffer 機(jī)制模仿顯卡的功能,將顯卡硬件結(jié)構(gòu)抽象掉,可以通過 FrameBuffer 的讀寫直接對(duì)顯存進(jìn)行操作。設(shè)備驅(qū)動(dòng)程序?yàn)閼?yīng)用程序屏蔽了硬件的細(xì)節(jié),這樣在應(yīng)用程序看來,硬件設(shè)備只是一個(gè)設(shè)備文件,應(yīng)用程序可以 像 操作普通文件一樣對(duì)硬件設(shè)備進(jìn)行操作。 此處以 dd 命令建立一個(gè) 了一個(gè) 18MB 文件系統(tǒng)映象,存于 /tmp/ramdisk,并以 .dev/zero 對(duì)它進(jìn)行初始化。 卸裝文件系統(tǒng): $umount rd 壓縮新生成的 ramdisk文件系統(tǒng)映像文件: $gzip ramdisk 得到的 就是新生成的目標(biāo)根文件系統(tǒng)。內(nèi)核在沒有正確的根文件系統(tǒng)的情況下運(yùn)行會(huì)出現(xiàn) panic 錯(cuò)誤信息而終止。. Load address: 0x30800000 Loading: done Bytes transferred = 4632504 (46afb8 hex) JX2410 tftp 30008000 zImage RTL8019AS Founded! MAC : 0x80x00x3e0x260xa0x5b MAC: 0x0:0x0:0x0:0x0:0x0:0x0 TFTP from server 。然后將 JXARM92410上電,正常情況下將在 mini中看到 BootLoader菜單界面。 生成的 Linux映像文件 zImage 保存在 /home/cvtech/jx2410/linux/arch/arm/boot/目錄下。 如圖 所示 。 在編譯裁剪內(nèi)核的過程中,大部分選項(xiàng)可以使用其缺省值,只有小部分需要根據(jù)用戶不同的需要選擇。 對(duì)于交叉開發(fā),在編譯之前要在頂層的 Makefile 中設(shè)置 ARCH 、 CROSS_COMPILE 和EXTRA_VERSION 變量,然后才能選擇配置出特定的體系結(jié)構(gòu)平臺(tái)。這樣,參考板上的 設(shè)備驅(qū)動(dòng)程序多數(shù)可以直接使用。內(nèi)核移植工作, 主要 就是添加開發(fā)板初始化和驅(qū)動(dòng)程序的代碼。移植的難度也取決于兩種硬件平臺(tái)的差異。將 Linux 內(nèi)核 移植到 ARM 的時(shí)候要打上 ARM 公司的補(bǔ)丁。. Load address: 0x30000000 Loading: done Bytes transferred = 126976 (1f000 hex) JX2410 30000000 0 1f000 Copy to Flash...\done 成功后重新上電,執(zhí)行的將是新的 uboot。 10 配置和編譯 uboot 進(jìn)入 uboot 所在的目錄 $ cd /home/cvtech/jx2410/ 刪除目錄下編譯的中間文件 $ make distclean 為目標(biāo)板選擇相應(yīng)的配置文件 $ make smdk2410_config 編譯 $ make 燒寫 uboot 如果當(dāng)前系統(tǒng)已經(jīng)有 uboot 燒寫到 flash,也可以通過 uboot 燒寫 。移植uboot 工作就是添加開發(fā)板硬件相關(guān)的文件、配置選項(xiàng),然后配置編譯。
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1