Linux下程式設計有什麼優勢
作者:方春根
連結:https://www.zhihu.com/question/26031045/answer/35980197
來源:知乎
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。
題主的意思不是問“Linux好處都有啥,誰說對了不給他”(escape根據題主描述題主應該壓根不清楚計算機的體系結構那麼有點基本開發經驗的我可以簡單講講關於題主的疑惑了:1,為什麼無人機多用Linux系統?無人機,為了實現無人功能,就需要實現對飛機的遠端操控。那麼,最簡單的方式就是在無人機上部署一個計算機來指揮無人機的行動過程。因為飛行器尺寸的限制,飛行器上的計算機需要可靠,低能量消耗以及尺寸比較小,那麼arm處理器就比較符合這些原則了。如果題主研究過物聯網相關的玩意,會發現這方面工程師很喜歡用樹莓派或者其他的arm計算機實現一個“中控中心”的設計,淘寶上就可以買到一套完整的基於Arduino開源工程的無人飛行器的元件。也就是說,只要你有好的想法,你都可以通過現有的工具零件搭建出一個原型來實踐。硬體有了,arm計算機,計算機是由軟體和硬體組成的,軟體呢?Linux平臺上的各種作業系統。為什麼選用Linux平臺的作業系統?首先,對效能的要求比較低,符合低功耗要求。前人栽樹,後人乘涼,linux平臺上已經很多的“輪子”,即第三方庫,很多現成做好的功能,拿過來就可以用,比如說安卓系統對定位功能的封裝。(其實是滿大街linux嵌入式開發工程經驗。。。前人的開發經驗最寶貴嘛)另外,linux對底層硬體的可操作性也是一等一的。(具體請見核心程式設計、驅動程式開發等書籍)總結一下,arm計算機適合用來作為電子積木搭建工程原型,linux平臺比較適合arm計算機,所以就造成了“其中有很多無人機專案都是用 Linux 程式碼編寫的”。2,(1)意思是Linux程式碼能來程式設計嗎,Linux是核心,使用Linux核心的系統都可以被稱作Linux系統。作業系統本身不是開發工具,不會出現用Linux程式碼程式設計這種事情。shell指令碼不算,因為shell本身也是一種互動語言嘛。(2)我上網查了下Linux程式碼,好像和C語言差不多本來Linux就是用c搞的3,前面講了,Linux是作業系統,題主也知道c語言。那麼語言編好了程式,程式一般需要作業系統的支援下來執行,你寫一個printf("hello world"),在萌萌噠的vc6下會出來個黑框框,在萬惡的gcc下面會生成一個out檔案。程式語言的表現是基於作業系統上的,那麼在Linux下用c或者其他語言對無人機程式設計有什麼優點?簡答:1,作業系統本身低功耗不佔用太多能源動力。2,第三方庫有很多,從網路操作到硬體掌控,都有現成的輪子。3,對底層硬體的掌控性非常好,沒有輪子,核心程式設計編出來個輪子也可以。4,arm和linux相依為命,約定俗成。5,除了linux/unix體積小,效率高以外,最重要的我覺得還是它的安全性,因為連核心都是可以重新編譯的,完全不用擔心後門程式。(感謝老何同志的補充)物聯網大牛如有寶貴意見,請留言,在這裡先為您的提攜說聲謝謝。update:別的答案這麼喜歡黑windows,無視wince真的沒問題
連結:https://www.zhihu.com/question/26031045/answer/35980197
來源:知乎
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。
題主的意思不是問“Linux好處都有啥,誰說對了不給他”(escape根據題主描述題主應該壓根不清楚計算機的體系結構那麼有點基本開發經驗的我可以簡單講講關於題主的疑惑了:1,為什麼無人機多用Linux系統?無人機,為了實現無人功能,就需要實現對飛機的遠端操控。那麼,最簡單的方式就是在無人機上部署一個計算機來指揮無人機的行動過程。因為飛行器尺寸的限制,飛行器上的計算機需要可靠,低能量消耗以及尺寸比較小,那麼arm處理器就比較符合這些原則了。如果題主研究過物聯網相關的玩意,會發現這方面工程師很喜歡用樹莓派或者其他的arm計算機實現一個“中控中心”的設計,淘寶上就可以買到一套完整的基於Arduino開源工程的無人飛行器的元件。也就是說,只要你有好的想法,你都可以通過現有的工具零件搭建出一個原型來實踐。硬體有了,arm計算機,計算機是由軟體和硬體組成的,軟體呢?Linux平臺上的各種作業系統。為什麼選用Linux平臺的作業系統?首先,對效能的要求比較低,符合低功耗要求。前人栽樹,後人乘涼,linux平臺上已經很多的“輪子”,即第三方庫,很多現成做好的功能,拿過來就可以用,比如說安卓系統對定位功能的封裝。(其實是滿大街linux嵌入式開發工程經驗。。。前人的開發經驗最寶貴嘛)另外,linux對底層硬體的可操作性也是一等一的。(具體請見核心程式設計、驅動程式開發等書籍)總結一下,arm計算機適合用來作為電子積木搭建工程原型,linux平臺比較適合arm計算機,所以就造成了“其中有很多無人機專案都是用 Linux 程式碼編寫的”。2,(1)意思是Linux程式碼能來程式設計嗎,Linux是核心,使用Linux核心的系統都可以被稱作Linux系統。作業系統本身不是開發工具,不會出現用Linux程式碼程式設計這種事情。shell指令碼不算,因為shell本身也是一種互動語言嘛。(2)我上網查了下Linux程式碼,好像和C語言差不多本來Linux就是用c搞的3,前面講了,Linux是作業系統,題主也知道c語言。那麼語言編好了程式,程式一般需要作業系統的支援下來執行,你寫一個printf("hello world"),在萌萌噠的vc6下會出來個黑框框,在萬惡的gcc下面會生成一個out檔案。程式語言的表現是基於作業系統上的,那麼在Linux下用c或者其他語言對無人機程式設計有什麼優點?簡答:1,作業系統本身低功耗不佔用太多能源動力。2,第三方庫有很多,從網路操作到硬體掌控,都有現成的輪子。3,對底層硬體的掌控性非常好,沒有輪子,核心程式設計編出來個輪子也可以。4,arm和linux相依為命,約定俗成。5,除了linux/unix體積小,效率高以外,最重要的我覺得還是它的安全性,因為連核心都是可以重新編譯的,完全不用擔心後門程式。(感謝老何同志的補充)物聯網大牛如有寶貴意見,請留言,在這裡先為您的提攜說聲謝謝。update:別的答案這麼喜歡黑windows,無視wince真的沒問題
相關文章
- 好程式設計師Java培訓分享Java有什麼優勢 為什麼學的人多程式設計師Java
- 預約app小程式有什麼優勢APP
- “Go語言”有什麼用途?有什麼優勢?Go
- 學Java優勢有什麼?Java
- 什麼是docker?docker有什麼優勢?Docker
- 雲端計算技術是什麼?雲端計算有什麼優勢?
- 原生IP是什麼意思?有什麼優勢?
- 教育機構小程式原始碼有什麼優勢?原始碼
- 低程式碼開發,到底有什麼優勢?
- 雲端計算有什麼特點或優勢呢?
- Linux是什麼系統?Linux系統有何優勢?Linux
- Linux系統有什麼優勢?Linux運維學習Linux運維
- WebSocket有什麼優勢?有哪些特點?Web
- Linux對比Windows有什麼優勢?這些必知!LinuxWindows
- Linux與windows對比有什麼優勢?對比分析!LinuxWindows
- Linux與windows對比有什麼優勢?學習分析!LinuxWindows
- 伺服器為什麼用Linux?其優勢有哪些?伺服器Linux
- 學習web前端有什麼優勢?Web前端
- 講一講Java有什麼優勢?Java
- Python是什麼語言?有什麼優劣勢?Python
- SFTP是什麼協議?優勢有哪些?與FTP有什麼不同?FTP協議
- 為什麼伺服器系統用Linux?Linux有哪些優勢?伺服器Linux
- Linux與windows對比有什麼優勢?詳細區別LinuxWindows
- 雲端計算有什麼優勢?一起來看看吧!
- Golang有什麼優勢?與Erlang有何差異?Golang
- Pycharm有什麼優勢?常見快捷鍵有哪些?PyCharm
- 伺服器系統有什麼優勢伺服器
- 大資料ELK有什麼優勢呢?大資料
- 大資料技術有什麼優勢大資料
- IPIDEA獨享代理IP是什麼,有什麼優勢?Idea
- Linux在it市場有什麼優勢?linux運維怎麼入門看書Linux運維
- Linux系統有什麼優勢?linux伺服器入門學習Linux伺服器
- 程式設計師的優勢和劣勢程式設計師
- 學習mysql需要什麼基礎?MySQL有什麼優勢嗎?MySql
- 資料卷是什麼?資料卷有什麼優勢嗎?
- Python多執行緒是什麼意思?有什麼優勢?Python執行緒
- 【知識分享】DHCP伺服器是什麼有什麼優勢伺服器
- 程式設計師有什麼好當的?程式設計師