女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

用于嵌入式系統的Java:優點和缺點

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Kaique Mancoso ? 2022-11-22 16:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

物聯網、UI/UX 和 AI嵌入式系統每天都變得越來越復雜。過去只有一個或兩個功能的產品現在為用戶提供了更多的實用程序,需要反映用戶界面提供的體驗。物聯網正在改變我們處理硬件的方式,保證了互聯、自動化甚至更智能的日常生活。Java是最常用的編程語言之一,特別是因為它易于開發和跨平臺使用。但是,Java尚未在嵌入式系統的開發中被廣泛采用。事實上,C/C++仍然是嵌入式系統中最流行的編程語言。大約80%的嵌入式系統項目是用C/C++編寫的,但將來不會這樣。可能會采用新的語言來滿足市場增長。使用 C/C++ 構建項目非常耗時,并且很難找到或培訓新的 C/C++ 專業人員。本文的目的是展示使用Java進行嵌入式系統開發的主要優點,以及這種語言的缺點(以及建議處理和解決這些缺點的方法)。

物聯網和嵌入式系統與Java的比較

多年來,參與嵌入式系統開發的專業人員數量大幅增長。當然,這種專業人員與從事臺式機和移動設備應用程序開發的人數之間存在巨大差異。但是,根據IC Insights的數據,嵌入式設備MPU的銷量將在三年內與智能手機處于同一水平。

一般來說,機器已經配備了真正的技術武器庫。我們周圍的產品,如汽車和家用電器,已經創造出能夠響應人類需求的不同事件和要求的能力。在這種情況下,物聯網代表的不是未來的趨勢,而是現在正在發生的事情。這也可以在工業環境中看到。工業自動化需要更多的連接性、數據分析,當然還有新的儀表板。

考慮到所有這些,有必要關注未來的預期。盡管 C 和 C++ 需要更少的內存和 CPU 周期,但 Java 應該被視為嵌入式系統的更好選擇,因為它是最有組織的編程語言之一,非常適合大型項目。Java 具有嵌入式系統環境的理想特征,包括可移植性、代碼重用、可靠性、安全性、WEB 以及與其他嵌入式系統的連接。為了提供嵌入式世界需要(并且已經要求)的東西,使用像Java這樣的高級語言是很重要的。此外,世界上有很多Java開發人員,遷移到嵌入式系統對他們來說應該不是問題。

在嵌入式系統上使用 Java 的優勢

使用Java為嵌入式設備開發應用程序,除了最佳的語言質量外,由于各種用途和現有支持,還可以減少應用于項目創建的時間和成本。那么,讓我們看看為什么你應該將Java用于嵌入式系統的其他一些原因:

上市時間很重要,提供更少的開發時間:Java具有理想的內存管理,并且更容易檢測錯誤(并修復它們);

建議用于超過 5 個屏幕的 GUI 項目;

從第一個版本開始就堅固耐用(得益于封裝概念、設計模式和 SOLID 原則);

單純;

可移植到不同的CPU或操作系統(無需重寫代碼);

安全性,支持加密敏感數據;

大量獨立于操作系統的庫;

可在桌面和遠程調試;

在高級語言和高性能方面的最佳折衷方案(取決于所使用的虛擬機);

看起來很完美!但是(就像世界上的一切一樣)也有一些缺點。讓我們看看Java在嵌入式系統面臨的挑戰。

將 Java 用于嵌入式系統的缺點

選擇Java有很多很好的理由。但是,在嵌入式系統上使用 Java 有三個主要缺點:

Java非常冗長;

它復雜而龐大(217 個包,4240 個類);

性能低。

甚至甲骨文自己也創建了Java SE Embedded來解決這類問題,并針對嵌入式設備優化了虛擬機。但是,對于大量針對低端設備的項目來說,這還不夠。

這種擔憂一直是Java進入嵌入式系統的主要障礙。但好消息是,有一些新技術旨在解決所有這些問題。

嵌入式系統占用空間小,性能高

為了實現這一目標,有必要找到完整Java和Java虛擬機的替代方案。在這種情況下,TotalCross是一個有趣的框架。

TotalCross是嵌入式系統的SDK,使用自己的虛擬機,稱為TotalCross虛擬機(TCVM)。TCVM 不是基于堆棧的 JVM,而是基于寄存器的虛擬機。這在運行時間上產生了巨大的差異,因為它減少了加載的指令數量。正如您在以下示例中看到的,一個簡單的操作在 JVM 上加載四條指令,而在 TCVM 上運行時只加載一條指令。

除了TCVM之外,還基于統計研究創建了一個稱為TotalCross字節碼的優化字節碼,以確定對性能影響最大的最常用的函數。除了這些函數減少指令數量的壓力外,這種優化的字節碼還確保了低占用空間,因為它使用了一個名為 Nano Java 的 Java 子集,該子集只有 86 個包和 1184 個類(完整 Java 的 1/4)。

TotalCross不使用所有的Java架構,而只使用嵌入式應用程序開發所需的架構。所有這些特性為嵌入式系統提供了5MB的占用空間和高性能。

結論

在嵌入式系統上使用Java的優點多于缺點,特別是因為代碼的質量和已經能夠使用Java編程的大量人員。將Java社區納入嵌入式系統領域尤為重要,因為它是編程世界中的第三大社區。但是,正如我們所看到的,足跡和性能會影響項目結果。因此,建議使用能夠打破這些障礙的替代方案,例如TotalCross框架。有了它,可以享受Java的所有優點,并且仍然保證嵌入式系統的低占用空間和高性能。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5154

    文章

    19708

    瀏覽量

    318130
  • JAVA
    +關注

    關注

    20

    文章

    2989

    瀏覽量

    110442
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Linux嵌入式和單片機嵌入式的區別?

    區別 單片機嵌入式系統和Linux嵌入式系統是兩種不同的嵌入式系統開發方式,它們在應用領域、開
    發表于 06-20 09:46

    嵌入式開發,如何選擇適合的系統

    嵌入式ARM開發中,面對多種操作系統的選擇,如何做出最適合項目的決策?本文將為您梳理常見系統的特性,幫助您快速了解它們的優缺點,以便更好地選擇適合的
    的頭像 發表于 05-20 11:32 ?446次閱讀
    <b class='flag-5'>嵌入式</b>開發,如何選擇適合的<b class='flag-5'>系統</b>?

    嵌入式開發入門指南:從零開始學習嵌入式

    隨著物聯網、智能硬件的發展,嵌入式開發成為熱門技能之一。以下將為初學者提供一份詳細的嵌入式開發入門指南,涵蓋學習路徑、必備工具、推薦資源等內容。 1. 嵌入式系統的定義與應用
    發表于 05-15 09:29

    嵌入式系統開發圣經【干貨】

    內容包括:嵌入式系統的介紹、嵌入式SoC硬件系統概論、嵌入式系統軟件開發。適
    發表于 03-12 13:58

    嵌入式系統中使用EEPROM的優缺點

    同時也存在一些局限性。以下是EEPROM在嵌入式系統中使用的優缺點分析: 優點 非易失性存儲 : EEPROM中的數據在斷電后仍然保持不變,這對于需要長期保存配置信息、校準數據等的應用
    的頭像 發表于 12-16 16:57 ?961次閱讀

    新手怎么學嵌入式?

    。但面對這個復雜的領域,很多人可能會感到迷茫,不知從何處入手。別擔心,本文將為你提供一些入門學習嵌入式技術的建議。 新手入門學習嵌入式技術的途徑 1. 了解基礎知識 首先,要對嵌入式系統
    發表于 12-12 10:51

    什么是嵌入式人工智能

    嵌入式人工智能是指將人工智能技術應用于嵌入式系統中的一種技術。嵌入式系統
    的頭像 發表于 12-11 09:23 ?1042次閱讀
    什么是<b class='flag-5'>嵌入式</b>人工智能

    嵌入式系統開發與硬件的關系 嵌入式系統開發常見問題解決

    嵌入式系統開發與硬件的關系 嵌入式系統是專為特定應用設計的計算機系統,它們通常嵌入在所控制的設備
    的頭像 發表于 12-09 09:38 ?1000次閱讀

    【「嵌入式系統設計與實現」閱讀體驗】+ 學習一個STM32的案例

    感謝電子發燒友論壇和電子工業出版社的贈書。 在[上一篇帖子](【新提醒】【「嵌入式系統設計與實現」閱讀體驗】+ 初步印象 - 社區活動專版 - 電子技術論壇 - 廣受歡迎的專業電子論壇!)中介紹了
    發表于 12-06 22:22

    mmc卡在嵌入式系統中的使用

    。多媒體卡(MultiMediaCard,簡稱MMC)作為一種小型、高性能、低成本的存儲解決方案,被廣泛應用于嵌入式系統中。 1. MMC卡的工作原理 MMC卡是一種基于閃存技術的存儲卡,最初由西門子和東芝共同開發。它遵循SD卡
    的頭像 發表于 11-25 09:58 ?1210次閱讀

    嵌入式系統與物聯網的結合

    。這兩者的結合,為智能設備和智能系統的發展提供了強大的動力。 一、嵌入式系統與物聯網的基本概念 嵌入式系統
    的頭像 發表于 11-06 10:23 ?1139次閱讀

    什么是嵌入式?一文讀懂嵌入式主板

    在現代科技浪潮中,嵌入式技術已成為支撐各種智能設備和系統運行的核心力量。那么,究竟什么是嵌入式嵌入式系統,顧名思義,是將計算機的硬件和軟件
    的頭像 發表于 10-16 10:14 ?2661次閱讀

    嵌入式系統的原理和應用

    嵌入式系統是一種專用的計算機系統,其設計初衷是執行特定任務,而非作為通用計算機使用。這類系統通常作為更大系統的一部分,起到控制、監控或輔助的
    的頭像 發表于 10-05 17:03 ?2260次閱讀

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱為嵌入式系統的核心組件,是一種用于控制和數據處理的計算機硬件,其設計旨在嵌入特定設備中執行專門任務。
    的頭像 發表于 09-30 10:05 ?1638次閱讀

    嵌入式系統的未來趨勢有哪些?

    嵌入式系統是指將我們的操作系統和功能軟件集成于計算機硬件系統之中,形成一個專用的計算機系統。那么嵌入式
    發表于 09-12 15:42