บทความ
 อวกาศ
 พลังงาน
 อิเล็กทรอนิกส์
 ทฤษฏีสัมพัทธภาพ
 ไครโอเจนิกส์
 เฮลิคอปเตอร์
 เกียร์อัตโนมัติ
 โทรศัพท์มือถือ
 ยาง
 รถไฟความเร็วสูง
 คลัตช์ และกระปุกเกียร์ธรรมดา
 เจ็ทแพ็ค
 แผ่นดินไหว
 คู่มือ ต้องรอด
 โรงไฟฟ้าพลังน้ำ
 ดาวเทียม
 เชื่อมโลหะใต้น้ำ
 กังหันลมผลิตไฟฟ้า
 เครื่องยนต์ดีเซล
 เครื่องยนต์เบนซิน
 คัมภีร์สงครามซุนวู ฉบับเข้าใจง่าย
 โลหะ
 ฟิสิกส์
 ปัญหาพระยามิลินท์
 ยานยนต์สมัยใหม่
 แมคาทรอนิกส์
 เครื่องกล 6 แกน
 เครื่องยนต์เจ็ท
 หุ่นยนต์
 สินค้า ผลงาน
 เขียนแบบ
 ออกแบบ คำนวณ
 วางโครงการ
 งานโลหะ
 อุปกรณ์
 เครื่องกล
วันนี้ 769
เมื่อวาน 550
สัปดาห์นี้ 769
สัปดาห์ก่อน 5,464
เดือนนี้ 7,730
เดือนก่อน 29,132
ทั้งหมด 821,786
  Your IP :52.91.90.122

3.9.2 โปรแกรมตรวจสอบจุดบกพร่อง

 

      เอ็ดเจอ ดิจสตร้า (Edsger Dijkstra) เป็นผู้บุกเบิกในด้านการพัฒนาโปรแกรมฝึกฝน คำว่า ความบกพร่อง (Bug) และการแก้จุดบกพร่อง (Debug) เป็นการพิจารณาสถานภาพในงานด้านวิศวกรรรมซอฟแวร์ ซึ่งนิยมใช้ในงานของขอบเขตทางการโปรแกรมซอฟแวร์

 

 

รูปเอ็ดเจอ ดิจสตร้า กับคำพูดของเขา

แนะนำเพื่อให้อ่านได้ต่อเนื่องให้ คลิกขวาเลือก Open link in new window

 

      โปรแกรมตรวจสอบจุดบกพร่อง หรือดีบักเจอร์ (Debugger) เป็นโปรแกรมซอฟแวร์ที่ยอมรับการพิจารณาซึ่งเกิดขึ้นมาจากโค๊ดโปรแกรม และข้อมูลขณะที่โปรแกรมกำลังดำเนินการ (Executing)

 

      โดยทั่วไปมันทำงานบนคอมพิวเตอร์พีซี นั่นคือ จะมีการเชื่อมต่อแบบชนิดพิเศษเพื่อให้ไมโครคอนโทรลเลอร์มีการพัฒนาทางด้านโปรแกรม ที่เรียกว่า โปรแกรมจำลองเครื่องจักรเสมือน หรืออีมูเลเตอร์ (Emulator)

 

 

รูปตัวอย่างการใช้โปรแกรมอีมูเลเตอร์เพื่อตรวจหาจุดบกพร่อง

 

      การแก้ไขข้อบกพร่อง ค่อนข้างที่มีประโยชน์ในการหา และแก้ไขความผิดปกติ พวกมันไม่ใช่ทำงานแบบเวลาจริง หรือเรียลไทม์ (Real-time: ช่วงเวลาที่สั้นมากที่เกิดขึ้นขณะระบบคอมพิวเตอร์กำลังรับ และจัดการข้อมูล) และเพื่อนำไปสู่ความสามารถที่เกิดขึ้นตามจริงในการสร้าง จะต้องมีการทำงานของคอมพิวเตอร์ที่ถูกต้องอย่างเหมาะสม (Computer Operating Properly: COP) เพื่อตรวจหาสิ่งผิดปกติ

 

 

รูปหลักการของซีโอพี

 

      อย่างไรก็ตาม หากโหมดการแก้จุดบกพร่องภูมิหลัง (Background Debug Mode: BDM) ถูกนำมาใช้ประโยชน์ในไมโครโปรเซสเซอร์ การแก้ไขข้อบกพร่องสามารถใช้ได้ เพื่อแสดงขั้นตอนการผ่านชุดคำสั่งที่สร้างไว้ตามขั้นตอน หรืออัลกอริทึม (Algorithm) ของโปรแกรม เพื่อทำให้เกิดความแน่ใจว่าโค๊ดนั่นเป็นการทำงานตามที่คาดไว้ ในค่าตัวแปรซึ่งอยู่ระหว่างกลาง และท้ายสุด

 

 

รูปตัวอย่างผังการต่อโหมดบีดีเอ็ม

 

 

รูปตัวอย่างอุปกรณ์ในด้านบีดีเอ็ม

 

      โดยเฉพาะอย่างยิ่ง สิ่งเหล่านั้นมีค่าความสัมพันต่อบางอย่างที่ทางด้านค่าของอนาล็อกด้านขาเข้า หรือด้านขาออก สามารถทำการตรวจสอบได้ การแก้ไขข้อบกพร่องส่วนใหญ่ยอมให้เปิดหน้าต่างวินโดว์ได้หลาย ๆ หน้าต่าง

 

      การตั้งค่าของจุดพักในการทำงานของโปรแกรมในโค๊ด และบางครั้งก็มีการทำรีแฟลช (Reflashing) ของโปรแกรมลงในโปรแกรมจำลองไมโครคอนโทรลเลอร์ (Microcontroller emulator) ยกตัวอย่างเช่น การแก้ไขข้อบกพร่องนอราล (Noral debugger) ที่นำมาใช้งานในโมโตโรลาเฮชซีเอส 12

 

 

รูปโมโตโรลา เฮ็ชซึเอส 12

 

      ซอฟแวร์ในไมโครคอนโทรลเลอร์มีความสามารถตรวจสอบตัวมัน และอุปการณ์ฮาร์ดแวร์ได้เอง โดยการโปรแกรมในการตรวจสอบ (Checksum) บางส่วน หรือโดยรวม ของส่วนที่มีการกำหนดในรอม และ / หรืออีอีพร็อม

 

      ซอฟแวร์สามารถตรวจสอบเพื่อทำให้เกิดความแน่ใจในโปรแกรม และข้อมูลว่ามีความถูกต้อง โดยสลับกันเขียน และอ่าน 0x55 และ 0xAA ที่แรม (การทดสอบบอร์ด (Checkerboard test)) โปรแกรมสามารถตรวจสอบแรม และบัสให้สามารถทำงานได้อย่างถูกต้อง งานเหล่านี้เป็นสิ่งเริ่มต้น ซึ่งควรจะทำกับทุก ๆ ผลิตภัณฑ์ฮาร์ดแวร์ ที่ควรมีการดำเนินงานเป็นรอบวัฏจักร

 

 

 

 

 

ข้อคิดดี ๆ ที่นำมาฝาก

 

“ความสำเร็จ มันอยู่ไกลเกินไปถึง

กับคนซึ่งนั่งหงอย และคอยหา

แต่ความสำเร็จ มันมาอยู่แค่ปลายตา

กับคนที่คิดว่าต้องพยายาม”

 

 

 

 

 

Share on Facebook
 
Google

WWW
http://www.thummech.com/
ฟังเพลงออนไลน์ คลิกเลย
 
Copyright © 2013-2015 Thummech All Rights Reserved. 
Powered by  ThaiWebPlus 
คนธรรมดามีความรู้คือคนฉลาด คนฉลาดมีความเข้าใจคือคนธรรมดา