基於開源軟體的嵌入式網絡列印伺服器

2020-12-24 電子產品世界


引 言
目前常用的列印機有兩種接口形式:USB口和Eth-ernet網口。由於價格相對較低,USB口的列印機更為普遍。USB口列印機不能獨立工作,必須依附於一臺主機。為了在一個區域網環境中共享使用一臺USB口印表機,需要為該印表機配備一臺伺服器,然後通過共享設置實現印表機的網絡共享。這種方式有幾個方面的缺陷:需要佔用一臺伺服器資源;耗電;容易中毒導致無法正常列印;由於長時間不間斷運行,出現故障的概率高,導致無法列印;佔用辦公空間。
隨著嵌入式處理器主頻的不斷提高,設計專門的嵌入式網絡列印伺服器已經成為共識。HP等很少的幾家印表機公司在幾年以前就推出了這樣的嵌入式設備,但基本上都只針對本公司特定的幾種印表機,無法做到通用。很多文獻,如參考文獻[1]、[2]中提到的設計方案不夠具體。基於這些情況,設計並實現了一款基於Linux的嵌入式網絡列印伺服器,硬體設計簡單,軟體完全開源,只要有Linux下的列印驅動,就可以支持。

本文引用地址:http://www.eepw.com.cn/article/152277.htm


1 總體方案設計
要把USB口印表機連人網絡,有兩種設計方案,一種是使用USB/乙太網協議轉換器,另一種是設計一個帶有USB口和乙太網網口(包含作業系統)的嵌入式設備。儘管協議轉換器軟硬體簡單,但不支持多用戶同時並發列印,也就無法實現共享列印的要求。
1.1 硬體設計
筆者是在中科院計算所自主研製基於龍芯1號核的「聚芯SoC」1000C上實驗的,主頻266 MHz。作為產品,只需要提供電源接口、USB口和乙太網口。調試階段,增加串口和JTAG調試接口。考慮到多用戶並發列印的負載和實際測試效果,因為移植的開源軟體有很多依賴庫,所佔空間較大,故選用的是1 GB容量的Flash。列印過程中,列印文件在內存中緩存,為了應對較大的列印文件和提高運行速度,建議選擇256 MB以上的SDRAM。嵌入式網絡列印伺服器硬體結構框圖如圖1所示。

1.2 軟體設計
軟體設計是整個系統設計的重點,也是難點。在設計思想上,強調儘可能使用開源軟體,主要是為了縮短研發周期並能保證列印系統的可靠性和穩定性。作業系統選擇目前主流的Linux作業系統。Linux作業系統下的列印控制系統根據印表機的命令方式,分為文本印表機、Post-Script印表機和其他種類。文本印表機不需要驅動程序,就可以直接用cat命令驅動印表機,但只能列印英文,已很少使用。PostScript(簡稱PS)是一種繪圖能力很強的解釋性腳本語言,由Adobe公司制定。它因佔用系統資源少,處理過程標準化與設備無關而被廣泛應用。直接支持PostScript的印表機通常都是比較高級的辦公印表機,對於這類印表機來說,PS語言是它們和計算機之間溝通的最簡便的方式,應用程式可以將生成的PS文檔直接發給印表機列印。但大多數情況下使用的是各種比較低檔的,不能直接支持PostScript的印表機,這類印表機只能識別各廠家自己的指令集。

linux作業系統文章專題:linux作業系統詳解(linux不再難懂)

相關焦點

  • 基於開源軟體MJPG_Streamer的智能視頻監控系統設計
    摘 要:針對目前開發數位化的視頻監控設備普遍成本較高、周期較長的特點,在ARM+Linux嵌入式平臺,應用開源免費軟體MJPG_Streamer實現視頻圖像的採集以及通過TCP/IP網絡協議傳輸到上位機進行遠程顯示。同時提出了一種結合三幀差分算法和背景減法的目標檢測算法,實現智能控制。
  • 基於嵌入式的開發雲和後端技術的討論研究
    基於嵌入式的開發雲和後端技術的討論研究 李威 發表於 2017-09-29 18:37:02   本文從大的宏觀網絡架構一步一步深入到微觀的微信後臺接入,業務引擎是應用系統的核心
  • 開源兇猛:塑造網際網路的開源軟體
    互動百科給出這樣定義開源軟體:「開源軟體,全稱為開放原始碼軟體,就是原始碼開放的軟體,對普通用戶來說,開源軟體大多都是免費下載的;對於商業用戶來說,開源軟體可以減少開發周期,因為原始碼開放了,只需要稍做修改就可以嵌入到產品中去,可以降低成本。
  • 基於4G的嵌入式數據通信系統研究
    其中,將4G-Ready 與Wi-Fi 技術、Blutooth 藍牙技術、GPS 全球定位系統以及基於ARM 核的嵌入式技術進行集成,以Linux-C、Java 程式語言開發應用軟體系統,能夠構成一個具有多種功能、技術性能優越和先進實用的嵌入式Wi-Fi 無線通信網絡終端系統,以滿足構建城市智能交通管理、市政環境保護監控和風景區信息管理等領域的無線數據通信應用需求。
  • Cortex-M3平臺上lwIP+AJAX的Web嵌入式應用
    所選Cortex-M3平臺內部集成PHY,lwIP協議棧及實時作業系統FreeRTOS均是開源、免費,整個系統成本在60RMB以內,對於成本較敏感的網絡互聯產品提供了一種解決方案,並給出了硬體原理圖及軟體代碼。
  • 60款流行網絡工具的開源替代選擇
    連結:http://www.untangle.com/ 開源網絡:入侵檢測8. Open Source Tripwire取代的對象:Tripwire早在2000年,Tripwire就發布了開源版的網絡監控軟體;從此以後,該項目方面的發展從未斷過。
  • 流行小公司軟體的開源替代方案
    為此我們推出了最新的適合中小企業的開源軟體大全。許多公司在部署基於Linux的伺服器時頭一回接觸開源,於是本文增添了一大批伺服器軟體,比如作業系統、會計、ERP、郵件和群件等解決方案。許多公司還嘗試著在Windows或OS X臺式機上運行一些開源應用軟體。還有一小批中小企業在桌面系統上運行Linux,不過這類企業越來越多。
  • 注重解決方案 Sun軟體開源後新支點
    這不僅給Sun提供後續的支持和服務打下了堅實的基礎,未來的直接商機很大,而且因為Solaris開源帶來的伺服器銷量的提升,更是難以估量。     據IDC的統計,今年第二季度Sun擊敗DELL,重新奪回了伺服器市場「老三」的位置。業績的上升固然和Sun在x86伺服器市場的努力分不開,但業內人士認為,Solaris的開源也功不可沒。
  • 什麼是Hypervisor伺服器?
    Type 1的其他術語是本機/嵌入式Hypervisors,這是因為它們的硬體位置不同。最終用戶無法像使用Type 2一樣向現有計算機添加Type 1軟體。Type 1被嵌入到專用伺服器固件中,並且最終的主機支持虛擬化生產環境。
  • 大數據平臺常見開源工具集錦,看看你都知道哪些
    7.Neo4jNeo4j是一個高性能的,NoSQL圖形資料庫,具有處理百萬和T級節點和邊的大尺度處理網絡分析能力。它是一個嵌入式的、基於磁碟的、具備完全的事務特性的Java持久化引擎,但是它將結構化數據存儲在網絡(從數學角度叫做圖)上而不是表中。Neo4j因其嵌入式、高性能、輕量級等優勢,越來越受到關注。
  • 十大開源軟體貢獻者排名 - OSCHINA - 中文開源技術交流社區
    您心目中的十大開源貢獻者是下面的這些人嗎?10 PHP之父-Rasmus Lerdorf2001年創立了Shuttleworth基金,致力於社會創新,支助教育、自由、開源軟體,以及南非的開源軟體項目,比如Freedom Toaster。2004年通過Canonical公司支持建立在Debian上的Ubuntu軟體開發,重返自由軟體世界。2005年成立Ubuntu基金,初始投資1千萬美金。
  • 如何讓自己的軟體變現?開源提供了成功的路線圖
    「以開發人員為中心的軟體是技術領域下一個萬億美元機遇,而開源為實現這一願景提供了路線圖。」專家的斷言,讓我們對開源軟體的發展充滿憧憬。開源軟體是免費提供的,其原始碼可供所有人查看、調試甚至可以分叉。但是,免費提供的開源軟體,並不意味著不能產生收入。
  • 在VIM中實現對嵌入式軟體的調試
    因此,在VIM中實現對嵌入式軟體的調試,我們便得到了一個高效、穩定的嵌入式Linux的開發環境。1 gdb對嵌入式軟體的調試模式 許多非Linux的嵌入式系統已經在使用gdb與gdbstub對目標板進行遠程「交叉調試」;然而,因為Linux內核實現了ptrace()系統調用,所以在對嵌入式應用程式進行調試的時候並不需要gdb stub,而採用gdb套件提供的gdb伺服器來對目標板上的嵌入式應用程式進行調試。
  • 華為助力浙江移動打通基於TaiShan伺服器的網絡雲首個語音電話
    打開APP 華為助力浙江移動打通基於TaiShan伺服器的網絡雲首個語音電話 發表於 2019-07-04 08:55:37
  • 不要再用國外的開源報表軟體,國內的不香嗎?
    在報表行業,雖然各家軟體工具使出各種手段做廣告、吸引注意力,但開源報表卻越來越受到程式設計師熱烈追捧,如 JasperReports、iReport這樣的免費、開源的JAVA報表工具,先來了解一下JasperReports,iReport等開源報表。
  • 應用伺服器是什麼_應用伺服器有哪些
    IIS是一種Web服務組件,其中包括Web伺服器、FTP伺服器、NNTP伺服器和SMTP伺服器,分別用於網頁瀏覽、文件傳輸、新聞服務和郵件發送等方面,它使得在網絡(包括網際網路和區域網)上發布信息成了一件很容易的事。
  • 網絡伺服器是什麼 承載網際網路的核心
    網絡伺服器數據管理網絡伺服器網絡伺服器的分類網絡伺服器不同於普通PC,其CPU、晶片組、內存、磁碟系統、網絡等硬體方面都更具穩定性、安全性和性能優勢。網絡伺服器的分類也有了很多不同的分類方法。從規模檔次來劃分,可以分為用於辦公室文件及列印伺服器的入門級伺服器;用於小規模網絡,給中小企業提供Web、郵件等服務的工作組級伺服器;用於中型企業的數據中心、web網站等應用的部門級中檔伺服器;以及具備強大數據處理能力,可用於大型網絡的高檔企業級伺服器。
  • 簡悅聯合創始人云風:Skynet——一個基於Actor模式的開源並發框架
    【CSDN報導】 2013中國軟體開發者大會(以下簡稱SDCC)於8月30-31日在北京新雲南皇冠假日酒店舉辦。簡悅聯合創始人 雲風 在第二天的程式語言與工具專題論壇上,簡悅聯合創始人云風帶來題為《Skynet:一個基於Actor模式的開源並發框架》的主題演講。
  • Facebook 開源 Open/R,分布式網絡路由軟體
    多年來,Facebook 開發團隊一直都在創建新的軟體和硬體,隨後又將其技術傳遞給開源社區,讓大家學習使用。
  • linux伺服器-FreeNAS伺服器初探
    tid=69)FreeNAS是開源的NAS伺服器,它能將一部普通PC變成網絡存儲(https://www.webopedia.com/TERM/N/net……ed_storage.html)伺服器。該軟體基於FreeBSD,Samba及PHP,包含了一套支持多種軟RAID模式的作業系統和網頁用戶界面。