3
我從來沒有編寫過微控制器。我一直在玩Arduino,並且發現編程語言只是C語言,其中包含由IDE動態生成的樣板代碼。所以:在沒有操作系統的Arduino /微控制器上的C/C++和Linux/Windows上的C上,我不能做什麼?任何只使用標準庫的程序是否應該工作?還是有專門的功能,如malloc/free和setjmp/longjmp的限制?C對沒有操作系統的微控制器有什麼限制?
我問,因爲我想編譯和使用像openssl或crypto ++和Arduino Due(使用32位ARM處理器)的加密庫。
一些有用的信息,儘管通常可以避免動態內存的嵌入式平臺(的malloc /免費)上,因爲你的目標是避免運行時錯誤。 –
@MartinBeckett - 是的!而且既然你「擁有」了內存,你不必分享,而且內存是寶貴的,你通常想要嫉妒它,而且你可以硬編碼大部分分配。但這並不意味着它無法完成。 「沒有限制」與「這是一個好主意」不一樣...... – Floris
我必須檢查,我很驚訝AVR有一個malloc,它是哈佛架構(IIRC),沒有mmu –