999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向機器人應用的嵌入式Linux移植與應用

2018-10-31 10:49:24方超
數字技術與應用 2018年6期

方超

摘要:本文介紹了機器人技術嵌入式系統中Linux操作系統的篩選、剪裁、移植和應用,結合機器人技術對系統實時性的要求對Linux系統實時性優化做了探討。

關鍵詞:機器人;Linux內核;移植

中圖分類號:TP242 文獻標識碼:A 文章編號:1007-9416(2018)06-0124-01

1 引言

機器人技術是一種集成了力學、電子學、計算機技術、傳感技術、控制理論和人工智能等許多學科于一體的先進技術。機器人技術的發展一直與嵌入式系統的發展密切相關,機器人技術的研究是嵌入式技術的應用,嵌入式技術的發展必將提升機器人的智能水平。20世紀70年代中期以后,由于智能控制理論的發展和微處理器的出現,機器人逐漸成為研究熱點并取得了較大的發展。目前,嵌入式系統被廣泛用于機器人控制系統中。

2 linux內核的移植

從操作系統的角度來看,完整的嵌入式linux系統一般包括Bootloader、linux內核、根文件系統和用戶程序四個部分。由于硬件資源有限,無法將Bootloader和內核文件直接存放到存儲系統中,需要針對具體應用的功能需求裁剪Bootloader和linux內核,并選擇相應的C語言庫文件,針對嵌入式芯片的指令集重新編譯內核文件,使其具備完整的操作系統功能[1]。

2.1 交叉編譯環境的搭建

在完備系統構建之前,嵌入式linux系統無法正常運行,而且裁剪過的系統一般不能運行大型的調試工具。因此,需要在另外一個平臺上搭建一套linux系統開發環境,也叫做交叉編譯環境。linux系統中常用的交叉編譯工具是GNU工具鏈,包括binutils、gcc和glibc。構建交叉編譯工具的方法主要有:(1)單獨編譯和安裝交叉編譯工具鏈所需要的源代碼和庫文件,最終生成適用于所用處理器的交叉編譯工具;(2)通過Crosstool-ng腳本工具來實現一次編譯,生成交叉編譯工具。第一種方法相對困難,對于不想了解其內部機理的用戶來說可以采用第二種方法。

2.2 Bootloader移植

Bootloader是一段引導內核和文件系統啟動的程序,在操作系統上電或者復位之后,初始化硬件設備,建立內存空間的映射圖,為調用操作系統內核準備好正確的環境。具體包括配置板載時鐘系統、初始化內存、裝載內核程序、跳轉到內核執行,最后調用Linux操作系統和文件系統。

Bootloader的代碼一般存放在FLASH、EEPROM等固態存儲器中,其主要的啟動模式有兩種,啟動加載模式和下載模式。其中下載模式是開發人員常用的模式,即建立宿主PC機和板載系統之間的連接,把linux內核以及根文件系統下載到存儲器中,再對系統進行測試。

嵌入式系統中常用的引導程序有U-boot和Redboot等。U-boot代碼結構與linux類似,因此也是最常用的嵌入式linux系統的引導程序。U-boot的運行主要分為Stage1和Stage2兩個部分。Stage1使用匯編語言編寫,主要包含依賴于cpu體系結構的代碼,而stage2則通常用C語言來實現相對復雜的功能,具有更好的可讀性和移植性。要對U-boot進行移植,通常要在U-boot通用代碼中添加跟CPU、外設等硬件相關的配置文件,再對代碼進行配置編譯[2]。

2.3 Linux內核的裁剪與移植

內核是Linux系統的核心程序,內核的移植過程主要包括配置和編譯,主要步驟包括:(1)修改內核源碼根目錄下的makefile文件,增加內核對ARM系列處理器的支持,并指定交叉編譯器;(2)將與目標板相關的_deconfig文件拷貝到根目錄下.config文件中;(3)配置內核,常用的命令有四種,make xconfig、make oldconfig、make config和make menuconfig,一般使用make menuconfig來生成開發配置界面;(4)編譯內核,對配置過程中選擇的功能性驅動進行編譯,生成可執行的zImage文件,即壓縮的內核鏡像。

2.4 建立根文件系統

文件系統是存儲設備上的文件的組織和目錄,每個操作系統都至少有一個文件系統。嵌入式linux根文件系統可以通過busybox軟件來完成,具體的步驟包括:(1)安裝busybox軟件;(2)建立設備節點console和null,即/dev/console和/dev/null兩個基本的設備文件;(3)建立根文件系統中其他目錄,/mnt,/proc,/sys,/lib等;(4)建立配置文件/etc/inittab,/etc/init.d/rcs和/etc/fstab;(5)安裝庫函數,將交叉編譯鏈接庫中的所有.so庫文件拷貝到根文件系統的lib目錄中。

3 基于Linux內核的實時性

Linux已經被證明是適用于多種應用的非常穩定和優秀的內核。但是,由于GNU/ Linux最初設計為類Unix操作系統,因此其內核不能保證實時性能。調度程序延遲問題,即中斷發生和負責服務的線程運行之間的延遲在緊急情況下可達到幾十毫秒。這個問題主要是運行內核代碼時線程無法搶占,以及內核中存在長時間不可中斷的關鍵代碼段,解決調度程序延遲問題主要有兩種不同的方法[3]。

前一種解決方案最初由RTLinux在1996年提出并開發,其中包括在硬件和Linux之間插入一個稱為微內核的高效代碼層。微內核負責所有的實時功能,包括中斷、調度和高分辨率定時。2002年,在ADEOS項目框架中提出了另一個稱為納米內核的代碼層。ADEOS提供了一個硬件抽象層,允許實時內核和通用內核共存。該層的作用是將硬件中斷傳遞給架構中更高層的操作系統內核。ADEOS系統不實現實時操作系統,但提供了以最高優先級將中斷傳遞給實時操作系統的機制。一旦實時任務完成,相同的中斷可能會傳遞給非實時操作系統。解決調度器延遲問題的另一種解決方案是1997年由KURT Linux項目提出的,這種方法包括提供一組內核補丁,以便在標準Linux的結構中直接實現Posix 1003.1d實時擴展(高分辨率定時器,可搶占內核,改進的任務調度器等)。類似的補丁,即所謂的搶占和低延遲補丁集合在一個補丁中,并可作為從Linux發行版2.5.4-pre6開始的標準內核配置選項(CONFIG_PREEMPT)基于為內核調度程序創建機會的想法,該調度程序更經常地運行,從而最小化事件發生和調度程序運行之間的時間。特別是,搶占補丁修改了自旋鎖宏和中斷返回碼,如果可以搶占當前進程并重新調度請求未決,則系統調用調度器。

4 結語

以機器人的應用為背景,在嵌入式系統中引入linux操作系統來完成復雜任務,本文詳細介紹了嵌入式linux系統的裁剪和移植詳細步驟,并結合機器人應用對實時性的要求探討了對嵌入式linux系統實時性的優化方法。為機器人的嵌入式應用提供良好的參考資料。

參考文獻

[1]王學龍.嵌入式Linux系統設計與應用[M].清華大學出版,2001.

[2]程春雷.ARM平臺下Linux移植中BootLoader的原理和技術[J].中國電力教育,2007,(s1):25-27.

[3]李曉寧,李曉峰.基于嵌入式Linux操作系統的研究[J].長春師范大學學報, 2010,(2):48-49.

Abstract:This paper introduces the selection, cutting, transplantation and application of the Linux operating system in the embedded system of robot technology, and discusses the real-time performance optimization of the Linux system based on the requirements of the robot technology to the real-time performance of the system.

Key words:robot; Linux kernel; transplant

主站蜘蛛池模板: 91麻豆精品国产91久久久久| 欧美激情成人网| 日韩精品久久无码中文字幕色欲| 国产成人久视频免费| 日韩成人在线网站| 日韩AV无码一区| 国产日韩久久久久无码精品| 日本亚洲成高清一区二区三区| 亚洲日韩AV无码一区二区三区人| 亚洲一区二区三区麻豆| 亚洲国产第一区二区香蕉| 国产精品视频白浆免费视频| 欧美精品在线免费| 欧美另类精品一区二区三区 | 亚洲国产AV无码综合原创| 97国产精品视频自在拍| 草草影院国产第一页| 国产成人一区免费观看| 免费观看无遮挡www的小视频| V一区无码内射国产| 91在线视频福利| 一本无码在线观看| 久久精品无码专区免费| 国产99精品久久| 免费看黄片一区二区三区| 欧美午夜视频在线| 97综合久久| 九九热在线视频| 成人另类稀缺在线观看| 中文字幕无线码一区| 精品三级网站| 国产特一级毛片| 色播五月婷婷| 伊人福利视频| 欲色天天综合网| 人人澡人人爽欧美一区| 久久无码高潮喷水| 久久久受www免费人成| 国产白浆在线| 亚洲a免费| 成人在线天堂| 亚洲中文字幕97久久精品少妇| 中文字幕无码制服中字| 久久www视频| 亚洲成a人在线观看| 国产精品极品美女自在线网站| 久久久精品国产SM调教网站| 久久大香伊蕉在人线观看热2| 欧美国产菊爆免费观看| 全午夜免费一级毛片| 伊伊人成亚洲综合人网7777| 色老二精品视频在线观看| 无码AV日韩一二三区| 一本大道香蕉久中文在线播放| 日韩精品无码一级毛片免费| 丁香综合在线| 中文字幕无码中文字幕有码在线| 精品成人一区二区三区电影 | 亚洲三级电影在线播放| 成年女人a毛片免费视频| 丁香婷婷激情综合激情| 国产伦片中文免费观看| 福利在线一区| 国产精品七七在线播放| 亚洲精品视频免费看| 五月丁香伊人啪啪手机免费观看| 欧美视频二区| 午夜视频在线观看免费网站| 99视频精品全国免费品| 国产成人亚洲毛片| 日韩黄色大片免费看| 日本a级免费| 久久久久久高潮白浆| 99热这里只有免费国产精品| 五月激情婷婷综合| 国产国产人成免费视频77777| 久久久久久午夜精品| 欧亚日韩Av| 国产成人乱无码视频| 国产一级α片| 原味小视频在线www国产| 88av在线|