เมื่อฉันได้ยินการเขียนโปรแกรมระดับต่ำเช่นสำหรับไดรเวอร์ระบบฝังตัวระบบปฏิบัติการ ฯลฯ ฉันก็คิดถึง C ทันทีและบางที C ++ แต่ส่วนใหญ่ซี
แต่ภาษาอื่น ๆ ที่ใช้สำหรับงานประเภทนี้เช่นกัน? วันนี้ฉันหมายถึงไม่ใช่สิ่งที่มีการใช้
เมื่อฉันได้ยินการเขียนโปรแกรมระดับต่ำเช่นสำหรับไดรเวอร์ระบบฝังตัวระบบปฏิบัติการ ฯลฯ ฉันก็คิดถึง C ทันทีและบางที C ++ แต่ส่วนใหญ่ซี
แต่ภาษาอื่น ๆ ที่ใช้สำหรับงานประเภทนี้เช่นกัน? วันนี้ฉันหมายถึงไม่ใช่สิ่งที่มีการใช้
คำตอบ:
โดยทั่วไปการเขียนโปรแกรมระดับต่ำเช่นการเขียนโปรแกรมควบคุมนั้นเป็นส่วนผสมของภาษาแอสเซมบลีและ C
ภาษาแอสเซมบลีใช้สำหรับพูดคุยกับฮาร์ดแวร์และใช้ C เพื่อคุยกับเคอร์เนล
Adaยังคงใช้ในระบบความปลอดภัย / ภารกิจสำคัญเนื่องจากยังคงมีคุณสมบัติด้านความปลอดภัยที่ไม่มีใครเทียบได้
มันเป็นภาคบังคับที่จะใช้ Ada จนถึงยุคปลายในกระทรวงและพื้นที่อื่น ๆ แต่ไม่นานดังนั้นจึงไม่ได้ใช้อย่างหนักเท่าที่เคยเป็นมา แต่ก็ยังสามารถพบได้ในการใช้งานที่สำคัญอย่างยิ่ง avionics พลังงานนิวเคลียร์ ฯลฯ
รุ่นที่ทันสมัยมีการวางแนววัตถุและการสนับสนุนที่ดีสำหรับการประมวลผลแบบขนานดังนั้นยังคงมีประโยชน์ทั้งหมด
ฉันค้นคว้าบางอย่างเกี่ยวกับการเขียนโปรแกรม 8 บิตเมื่อไม่นานมานี้ (เกี่ยวข้องกับงานอดิเรกฉันต้องการลองสร้างอุปกรณ์อิเล็กทรอนิกส์ขั้นพื้นฐานบางอย่าง) นอกเหนือจาก C และ Assembly ภาษาเดียวที่ฉันพบว่าเป็นประโยชน์สำหรับงานเหล่านี้คือ Scheme และ Forth
Cythonเป็นตัวอย่างหนึ่ง ไม่ใช่สำหรับระบบฝังตัว แต่สำหรับไดรเวอร์และการเขียนโปรแกรมระดับต่ำอื่น ๆ มันถูกใช้มากขึ้นเรื่อย ๆ ในโลก Python เพื่อแทนที่ C คุณจะได้รับ Python ที่คอมไพล์แล้ว แต่ยังรวมถึงการเข้าถึงระดับต่ำและคำแนะนำสำหรับการเร่งความเร็ว
ในฐานะที่เป็นคนที่คลั่งไคล้งูใหญ่สิ่งที่ฉันใช้แม้ว่าเป็นที่ยอมรับกันน้อยมากและไม่ได้อยู่ในบริบทที่ร้ายแรง
ดีฉันได้ทำงานบางอย่างเกี่ยวกับระบบฝังตัวผ่านปีที่ผ่านมาโดยใช้ C และLua
ลองใช้eLuaเช่นกัน
- แก้ไข: ที่นี่ในบราซิลเราจะมี "เทคโนโลยีใหม่" สำหรับทีวีดิจิตอลที่เรียกว่าGinga มันเป็นมาตรฐานจริงๆ แต่ในมาตรฐานนี้ภาษาLuaถูกใช้เป็นแหล่งรวมของภาษาที่ฝังตัว อีกอันหนึ่งคือ Java
ผมคิดว่าเราสามารถยก Java เช่นกันสำหรับระบบพิเศษบางอย่างเช่นJavaCards หากสิ่งเหล่านั้นไม่ใช่ระบบฝังตัวกว่าที่ฉันไม่รู้ว่าฝังตัวหมายความว่าอย่างไร ... :)