คำถามและคำตอบในการสัมภาษณ์ระบบสมองกลฝังตัว 18 อันดับแรก

ต่อไปนี้เป็นคำถามและคำตอบเกี่ยวกับระบบสมองกลฝังตัวสำหรับผู้สมัครหน้าใหม่และผู้มีประสบการณ์เพื่อให้ได้งานในฝัน

 

คำถามและคำตอบในการสัมภาษณ์ระบบสมองกลฝังตัวสำหรับนักศึกษาใหม่

1) อธิบายว่าระบบสมองกลฝังตัวในระบบคอมพิวเตอร์คืออะไร?

ระบบสมองกลฝังตัวคือระบบคอมพิวเตอร์ที่เป็นส่วนหนึ่งของระบบหรือเครื่องจักรที่ใหญ่กว่า เป็นระบบที่มีฟังก์ชันเฉพาะภายในระบบไฟฟ้าหรือเครื่องกลขนาดใหญ่


2) ทำไมระบบสมองกลฝังตัวถึงมีประโยชน์?

ด้วยระบบฝังตัว ทำให้สามารถแทนที่เกตลอจิกฮาร์ดแวร์ บัฟเฟอร์อินพุต วงจรจับเวลา ไดรเวอร์เอาต์พุต ฯลฯ ได้หลายสิบรายการหรือมากกว่านั้น ด้วยไมโครโปรเซสเซอร์ที่มีราคาค่อนข้างถูก

👉 ดาวน์โหลดไฟล์ PDF ฟรี: คำถามและคำตอบในการสัมภาษณ์ระบบสมองกลฝังตัว


3) กล่าวถึงองค์ประกอบสำคัญของระบบสมองกลฝังตัวคืออะไร?

ส่วนประกอบสำคัญของ ระบบฝังตัว รวมถึง

  • ฮาร์ดแวร์
  • หน่วยประมวลผล
  • หน่วยความจำ
  • ตัวจับเวลา
  • วงจรอินพุต/โอ
  • วงจรเฉพาะการใช้งานระบบ
  • ซอฟต์แวร์
  • ช่วยให้มั่นใจได้ถึงความพร้อมใช้งานของหน่วยความจำระบบ
  • จะตรวจสอบความพร้อมใช้งานความเร็วของโปรเซสเซอร์
  • จำเป็นต้องจำกัดพลังงานที่สูญเสียไปเมื่อใช้งานระบบอย่างต่อเนื่อง
  • เวลาจริง Operaระบบ ting
  • มันรันกระบวนการตามกำหนดเวลาและทำการสลับจากกระบวนการหนึ่งไปอีกกระบวนการหนึ่ง

4) กล่าวถึงวิธีการจัดประเภทอุปกรณ์ I/O สำหรับระบบสมองกลฝังตัว?

อุปกรณ์ I/O ของระบบฝังตัวแบ่งออกเป็นสองประเภท

  • อนุกรม
  • Parallel
อนุกรม อินพุต เอาท์พุต
Syncสุภาพ: สัญญาณเสียง/วิดีโอ สัญญาณเสียง/วิดีโอ
แบบอะซิงโครนัส : แป้นพิมพ์ เมาส์ โมเด็ม เครื่องพิมพ์, โมเด็ม
Parallel อินพุต เอาท์พุต
บิตเดียว: การหมุน, เซ็นเซอร์เกณฑ์ พัลส์ไปยังวงจรภายนอก
มัลติบิต : Vp จาก ADC เซ็นเซอร์ จอแอลซีดี เครื่องพิมพ์

5) อธิบายว่าระบบฝังตัวแบบเรียลไทม์คืออะไร?

ระบบฝังตัวแบบเรียลไทม์คือระบบคอมพิวเตอร์ที่ตรวจสอบ ตอบสนอง หรือควบคุมสภาพแวดล้อมภายนอก สภาพแวดล้อมนี้เชื่อมต่อกับระบบคอมพิวเตอร์ผ่านแอคทูเอเตอร์ เซ็นเซอร์ และอินเทอร์เฟซอินพุต-เอาต์พุตอื่นๆ

คำถามและคำตอบสัมภาษณ์แบบฝัง


6) อธิบายว่าไมโครคอนโทรลเลอร์คืออะไร?

ไมโครคอนโทรลเลอร์เป็นระบบในตัวเองพร้อมอุปกรณ์ต่อพ่วง หน่วยความจำ และโปรเซสเซอร์ที่สามารถใช้เป็นระบบฝังตัวได้


7) พูดถึงความแตกต่างระหว่างไมโครโปรเซสเซอร์และไมโครคอนโทรลเลอร์คืออะไร?

ไมโครโปรเซสเซอร์คือผู้จัดการทรัพยากร (I/O, หน่วยความจำ) ซึ่งอยู่ภายนอกสถาปัตยกรรม

ไมโครคอนโทรลเลอร์มี I/O, หน่วยความจำ ฯลฯ อยู่ภายในและออกแบบมาเพื่อการควบคุมโดยเฉพาะ


8) ที่อยู่ DMA จะจัดการกับอะไร?

ที่อยู่ DMA เกี่ยวข้องกับที่อยู่ทางกายภาพ เป็นอุปกรณ์ที่ขับเคลื่อนข้อมูลและบัสแอดเดรสโดยตรงระหว่างการถ่ายโอนข้อมูล ดังนั้นจึงเป็นที่อยู่ทางกายภาพล้วนๆ


9) อธิบายว่า Interrupt Latency คืออะไร? คุณจะลดมันได้อย่างไร?

เวลาแฝงของการขัดจังหวะคือเวลาที่ส่งคืนจากรูทีนบริการขัดจังหวะที่โพสต์ซึ่งจัดการการขัดจังหวะเฉพาะ ด้วยการเขียนรูทีน ISR เล็กน้อย เวลาแฝงในการขัดจังหวะจะลดลง


10) กล่าวถึงรถโดยสารที่ใช้ในการสื่อสารในระบบสมองกลฝังตัวคืออะไร?

สำหรับระบบสมองกลฝังตัว รถโดยสารที่ใช้ในการสื่อสารประกอบด้วย

  • I2C: ใช้สำหรับการสื่อสารระหว่างไอซีหลายตัว
  • CAN: ใช้ในรถยนต์ที่มีเครือข่ายควบคุมจากส่วนกลาง
  • USB: ใช้สำหรับการสื่อสารระหว่าง CPU และอุปกรณ์เช่นเมาส์ ฯลฯ

ในขณะที่ ISA, EISA, PCI เป็นบัสมาตรฐานสำหรับการสื่อสารแบบขนานที่ใช้ในพีซี อุปกรณ์เครือข่ายคอมพิวเตอร์ ฯลฯ


คำถามและคำตอบในการสัมภาษณ์ระบบสมองกลฝังตัวสำหรับผู้มีประสบการณ์

11) แสดงรายการการใช้งาน Timer ต่างๆ ในระบบสมองกลฝังตัว?

ตัวจับเวลาในระบบฝังตัวมีการใช้งานหลายวิธี

  • นาฬิกาเรียลไทม์ (RTC) สำหรับระบบ
  • การเริ่มต้นเหตุการณ์หลังจากการหน่วงเวลาที่กำหนดไว้ล่วงหน้า
  • เริ่มต้นการเปรียบเทียบเวลาที่ตั้งไว้ล่วงหน้า
  • การจับค่าการนับในตัวจับเวลาของเหตุการณ์
  • ระหว่างสองเหตุการณ์ที่กำลังค้นหาช่วงเวลา
  • การแบ่งเวลาสำหรับงานต่างๆ
  • การแบ่งเวลาแบบมัลติเพล็กซ์
  • การจัดตารางเวลางานต่างๆ ใน ​​RTOS

12) อธิบายว่า Watchdog Timer คืออะไร

ตัวจับเวลาเฝ้าระวังคืออุปกรณ์อิเล็กทรอนิกส์หรือการ์ดอิเล็กทรอนิกส์ที่จะดำเนินการเฉพาะเจาะจงหลังจากช่วงระยะเวลาหนึ่ง หากเกิดปัญหาบางอย่างกับระบบอิเล็กทรอนิกส์


13) อธิบายว่าอะไรคือความจำเป็นในการวนซ้ำไม่สิ้นสุดในระบบฝังตัว?

ระบบสมองกลฝังตัวจำเป็นต้องมีการวนซ้ำไม่สิ้นสุดเพื่อประมวลผลหรือตรวจสอบสถานะของโปรแกรมซ้ำๆ ตัวอย่างเช่น กรณีของสถานะของโปรแกรมได้รับการตรวจสอบอย่างต่อเนื่องสำหรับข้อผิดพลาดพิเศษใดๆ ที่อาจเกิดขึ้นระหว่างรันไทม์ เช่น หน่วยความจำดับหรือหารด้วยศูนย์ เป็นต้น


14) แสดงรายการข้อผิดพลาดที่พบบ่อยในระบบสมองกลฝังตัว?

ข้อผิดพลาดที่พบบ่อยบางประการในระบบฝังตัวได้แก่

  • ความเสียหายของอุปกรณ์หน่วยความจำ การปล่อยประจุไฟฟ้าสถิตและกระแสไฟฟ้าชั่วคราว
  • บรรทัดที่อยู่ทำงานผิดปกติเนื่องจากการลัดวงจร
  • สายข้อมูลทำงานผิดปกติ
  • เนื่องจากขยะหรือข้อผิดพลาดบางตำแหน่งหน่วยความจำไม่สามารถเข้าถึงได้ในการจัดเก็บข้อมูล
  • การใส่อุปกรณ์หน่วยความจำลงในสล็อตหน่วยความจำไม่เหมาะสม
  • สัญญาณควบคุมไม่ถูกต้อง

15) อธิบายว่าเซมาฟอร์คืออะไร?

เซมาโฟร์คือชนิดข้อมูลนามธรรมหรือตัวแปรที่ใช้ในการควบคุมการเข้าถึงโดยกระบวนการหลายกระบวนการไปยังทรัพยากรทั่วไปในระบบพร้อมกัน เช่น ระบบปฏิบัติการที่มีการเขียนโปรแกรมหลายตัว  Semaphores มักใช้เพื่อวัตถุประสงค์สองประการ

  • เพื่อแบ่งปันพื้นที่หน่วยความจำร่วมกัน
  • เพื่อแชร์การเข้าถึงไฟล์

16) อธิบายว่าอะไรคือความแตกต่างระหว่าง mutexes และ semaphores?

มิวเท็กซ์ Semaphores
ออบเจ็กต์ mutex เปิดใช้งานเธรดหนึ่งในส่วนที่ถูกควบคุม โดยบังคับให้เธรดอื่นที่พยายามเข้าถึงส่วนนั้นรอจนกว่าเธรดแรกจะย้ายออกจากส่วนนั้น Semaphore อนุญาตให้เข้าถึงทรัพยากรที่ใช้ร่วมกันได้หลายครั้ง
Mutex สามารถถูกปล่อยออกมาได้โดยเธรดที่ได้รับมาเท่านั้น เซมาฟอร์สามารถส่งสัญญาณจากเธรดหรือกระบวนการอื่นได้
Mutex จะมีเจ้าของที่รู้จักเสมอ ในขณะที่เซมาฟอร์ คุณจะไม่รู้ว่าเรากำลังบล็อกเธรดไหน
Mutex ยังเป็นเครื่องมือที่ใช้เพื่อให้มีการแยกกันโดยไม่มีการหยุดชะงัก (ผู้บริโภคหรือผู้ผลิตสามารถมีคีย์และดำเนินการกับงานของตนได้) Semaphore เป็นเครื่องมือการซิงโครไนซ์เพื่อแก้ไขปัญหาส่วนวิกฤต
Mutexes ตามคำจำกัดความคือเซมาฟอร์ไบนารี ดังนั้นจึงมีสองสถานะที่ถูกล็อคหรือปลดล็อค Semaphores มักจะหมายถึงการนับล็อค

17) เมื่อใดจึงต้องใช้ฟังก์ชันการเรียกซ้ำ? พูดถึงสิ่งที่เกิดขึ้นเมื่อมีการประกาศฟังก์ชันการเรียกซ้ำแบบอินไลน์?

สามารถใช้ฟังก์ชันการเรียกซ้ำได้เมื่อคุณทราบว่าจำนวนการโทรซ้ำนั้นไม่มากเกินไป คุณสมบัติฟังก์ชันอินไลน์บอกว่าเมื่อใดก็ตามที่มันถูกเรียก มันจะคัดลอกคำจำกัดความที่สมบูรณ์ของฟังก์ชันนั้น ฟังก์ชันแบบเรียกซ้ำที่ประกาศเป็นแบบอินไลน์จะสร้างภาระในการดำเนินการคอมไพเลอร์


18) อธิบายว่าเราสามารถใช้เซมาฟอร์หรือ mutex หรือ spinlock ในบริบทขัดจังหวะใน Linux Kernel ได้หรือไม่?

Semaphore หรือ Mutex ไม่สามารถใช้สำหรับการขัดจังหวะบริบทใน Linux Kernel ในขณะที่ spinlocks สามารถใช้สำหรับการล็อคในบริบทขัดจังหวะ

คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)