嵌入式開發(fā)人員并不總是遵循與傳統(tǒng)軟件開發(fā)人員相同的路徑。然而,云和云本地技術(如集裝箱化)的引入將這兩個群體結合在一起。嵌入式開發(fā)人員尋求Linux和容器的好處,而物聯(lián)網(wǎng)設備的激增意味著我們需要在兩個方向上擴展人才。
為什么我們需要為嵌入式世界帶來更多的云本機功能?
由于某種原因,嵌入式開發(fā)與其他人的工作脫節(jié)了。當大多數(shù)人開發(fā)網(wǎng)站、推進云應用程序和其他服務時,嵌入式開發(fā)人員關注的是家庭中的Wi-Fi路由器、有線調制解調器和機頂盒等產(chǎn)品。大多數(shù)人認為這些東西只是正常工作。很少有人,甚至是工程師會想到這些設備的內部究竟是什么。
隨著我們逐漸融入一個擁有數(shù)十億臺連接設備的日益連接的世界,這些設備中的大多數(shù)將不再是單一功能的,而是需要多功能的。當這種情況發(fā)生時,不僅需要開發(fā)人員來創(chuàng)建服務和軟件,還需要一種方法來更新和管理這些設備,并保持它們的可靠性和安全性。而且,由于當今嵌入式開發(fā)的本質,工程和維護嵌入式設備通常是手動的,而且容易出錯。
嵌入式開發(fā)有什么獨特之處?
盡管存在空間和內存限制,嵌入式和云開發(fā)之間仍存在許多差異。然而,嵌入式開發(fā)中遇到的一個主要問題是將軟件安裝到機箱或設備上。您使用的任何Linux發(fā)行版也需要垂直集成,并專門為主板和應用程序構建。當所有東西都以這種方式高度定制時,在整個業(yè)務范圍內進行擴展是一項挑戰(zhàn)。
在過去,由于嵌入式設備通常只做一件事,所以開發(fā)稍微簡單一些。例如,路由器只需要路由數(shù)據(jù),但現(xiàn)在路由器做很多事情。可能會增加家長控制,甚至可能增加一些家庭自動化。使用傳統(tǒng)的嵌入式開發(fā)方式,您很難將單一功能設備擴展為多功能設備。
云本地技術使嵌入式開發(fā)民主化
為了充分實現(xiàn)數(shù)十億物聯(lián)網(wǎng),需要一套標準的工具,供數(shù)百萬可用的開發(fā)人員使用。這包括開源技術,如Kubernetes、容器以及敏捷開發(fā)戰(zhàn)略和工作流,使所有開發(fā)人員而不僅僅是嵌入式團隊能夠為物聯(lián)網(wǎng)創(chuàng)建新的創(chuàng)新應用程序。
“在云世界中,操作系統(tǒng)有點短暫,甚至不是你需要談論的東西。操作系統(tǒng)就在那里,它在云中,你可以在上面運行你的工作負載。在我們看到一個智能萬事通的世界之前,這就是我們需要使用嵌入式計算的地方。”
容器的可移植性簡化了跨物聯(lián)網(wǎng)團隊的嵌入式Linux固件和應用程序的生命周期管理。系統(tǒng)和應用程序級別的虛擬化還允許嵌入式開發(fā)Linux工程團隊采用敏捷和現(xiàn)代的云本地方法,如微服務和其他自動化戰(zhàn)略,以確保設備群的安全,加快上市時間并增加創(chuàng)新。