อ่าน 4 นาที
แบตเตอรี่แม็กซ์
BatteryMAX คือระบบตรวจจับสถานะไม่ได้ใช้งานที่ใช้สำหรับการจัดการพลังงานคอมพิวเตอร์ภายใต้การควบคุมของระบบปฏิบัติการ พัฒนาขึ้นที่ ศูนย์พัฒนาในยุโรป (EDC) ของ Digital Research, Inc.
แบตเตอรี่แม็กซ์
BatteryMAXคือระบบตรวจจับสถานะไม่ได้ใช้งานที่ใช้สำหรับการจัดการพลังงานคอมพิวเตอร์ภายใต้การควบคุมของระบบปฏิบัติการ พัฒนาขึ้นที่ ศูนย์พัฒนาในยุโรป (EDC) ของ Digital Research, Inc. ในเมืองฮังเกอร์ฟอร์ด สหราชอาณาจักร ระบบนี้ถูกสร้างขึ้นเพื่อรองรับคอมพิวเตอร์พกพา ( แล็ปท็อป ) รุ่นใหม่ที่ใช้พลังงานจากแบตเตอรี่ และเป็นส่วนสำคัญของระบบปฏิบัติการPalmDOS 1.0 ของ Novell ซึ่งออกแบบมาสำหรับ คอมพิวเตอร์พกพา รุ่นแรกๆ ในปี 1992
คำอธิบาย
การประหยัดพลังงานในคอมพิวเตอร์แล็ปท็อปแบบดั้งเดิมอาศัยตัวจับเวลาการไม่ใช้งานของฮาร์ดแวร์เพื่อตรวจสอบว่าคอมพิวเตอร์อยู่ในสถานะไม่ได้ใช้งานหรือไม่ โดยทั่วไปแล้วจะใช้เวลาหลายนาทีก่อนที่คอมพิวเตอร์จะสามารถระบุพฤติกรรมที่ไม่ได้ใช้งานและเปลี่ยนไปใช้สถานะการใช้พลังงานที่ต่ำกว่าได้ แต่ด้วยการตรวจสอบแอปพลิเคชันซอฟต์แวร์จากภายในระบบปฏิบัติการ BatteryMAX สามารถลดเวลาในการตรวจจับพฤติกรรมที่ไม่ได้ใช้งานจากหลายนาทีเหลือเพียงไมโครวินาทีได้ ยิ่งไปกว่านั้น ยังสามารถสลับสถานะการใช้พลังงานได้ประมาณ 18 ครั้งต่อวินาทีระหว่างการกดแป้นพิมพ์ของผู้ใช้ เทคนิคนี้ได้รับการตั้งชื่อว่าDynamic Idle DetectionและรวมถึงการหยุดหรือระงับการทำงานของCPUในช่วงเวลาเพียงไม่กี่ไมโครวินาที จนกว่าจะเกิดเหตุการณ์ทางฮาร์ดแวร์เพื่อเริ่มต้นการทำงานใหม่
DR DOS 5.0 ในปี 1990 เป็น ระบบปฏิบัติการคอมพิวเตอร์ส่วนบุคคล ระบบแรกที่รวมระบบตรวจจับการไม่ได้ใช้งานเพื่อการจัดการพลังงาน[ 1 ] [ 2 ]ระบบนี้คิดค้นโดยวิศวกรชาวอังกฤษ Roger Alan Gross และ John P. Constant ในเดือนสิงหาคม 1989 [ 3 ]สิทธิบัตรของสหรัฐอเมริกาที่อธิบายระบบตรวจจับการไม่ได้ใช้งานนี้ถูกยื่นเมื่อวันที่ 9 มีนาคม 1990 และได้รับอนุมัติเมื่อวันที่ 11 ตุลาคม 1994 [ 4 ]
แม้ว่า BatteryMAX จะเป็นผู้นำในช่วงแรกและได้รับการคุ้มครองโดยสิทธิบัตร แต่ก็ไม่ประสบความสำเร็จในเชิงพาณิชย์มากนัก เนื่องจากถูกลดบทบาทลงหลังจากความวุ่นวายที่เกิดขึ้นหลังจากการควบรวมกิจการของ Digital Research กับNovell, Inc. ในปี 1991 จนกระทั่งปี 1992 ซึ่งเป็นเวลาประมาณสามปีหลังจากที่คิดค้นขึ้นมา การจัดการพลังงานด้วยซอฟต์แวร์ภายใต้การควบคุมของระบบปฏิบัติการจึงแพร่หลายมากขึ้น หลังจากที่ MicrosoftและIntelเปิดตัวAdvanced Power Management (APM )
ภาพรวมการทำงาน
BatteryMAX ใช้เทคนิคการตรวจจับสถานะไม่ได้ใช้งานแบบไดนามิกเพื่อประหยัดพลังงาน โดยตรวจจับว่าแอปพลิเคชันกำลังทำอะไรอยู่ (ว่าอยู่ในสถานะไม่ได้ใช้งานหรือไม่) และสลับสถานะการใช้พลังงาน (เข้าสู่โหมดประหยัดพลังงาน) จึงช่วยยืดอายุการใช้งานแบตเตอรี่ของผลิตภัณฑ์
BatteryMAX ใช้โมเดลซอฟต์แวร์ตรวจจับแบบหลายชั้นที่ห่อหุ้มไว้ในไดรเวอร์อุปกรณ์อักขระDOS$IDLE$ ที่เรียกว่า ซึ่งมีโค้ดที่ขึ้นอยู่กับฮาร์ดแวร์ ทั้งหมด เพื่อรองรับการตรวจจับสถานะว่างแบบไดนามิก[ 5 ]สามารถเชื่อมโยงเข้ากับBIOS ของระบบปฏิบัติการ DR-DOS หรือโหลดแบบไดนามิกโดยใช้ คำสั่ง CONFIG.SYS DEVICEเพื่อโอเวอร์โหลดไดรเวอร์เริ่มต้นในตัว DR-DOS ทุกเวอร์ชันตั้งแต่เวอร์ชัน 5.0 เป็นต้นมามีการสนับสนุนการตรวจจับสถานะว่างแบบไดนามิกภายในเคอร์เนล ของระบบปฏิบัติการ เมื่อระบบปฏิบัติการเชื่อว่าแอปพลิเคชันไม่ได้ใช้งาน ระบบจะเรียก$IDLE$เลเยอร์ BIOS/ไดรเวอร์ ซึ่งจะดำเนินการโค้ดที่กำหนดเองที่เขียนโดยผู้ผลิตคอมพิวเตอร์หรือบุคคลที่สามเพื่อตรวจสอบคำขอและสลับสถานะพลังงาน การใช้แนวคิดไดรเวอร์อุปกรณ์ BatteryMAX สามารถรวมเข้ากับสิ่งอำนวยความสะดวกในการจัดการพลังงานที่เกี่ยวข้องกับฮาร์ดแวร์ ซึ่งอาจจัดหาโดยฮาร์ดแวร์พื้นฐาน รวมถึงการเชื่อมต่อกับBIOS ของระบบ APMหรือACPI
สถานะการใช้พลังงานขึ้นอยู่กับคอมพิวเตอร์แต่ละรุ่นและจะแตกต่างกันไปตามผู้ผลิต การประหยัดพลังงานสามารถทำได้หลายวิธี เช่น การลด/หยุดความเร็วสัญญาณนาฬิกาของโปรเซสเซอร์ หรือการปิดระบบจ่ายไฟให้กับระบบย่อยทั้งหมด
ก่อนที่จะเปลี่ยนสถานะการใช้พลังงาน$IDLE$ไดรเวอร์จะใช้ความช่วยเหลือจากฮาร์ดแวร์ที่มีอยู่เพื่อตรวจจับว่าแอปพลิเคชันได้เข้าถึงส่วนประกอบอื่นๆ ในระบบหรือไม่ ตัวอย่างเช่น แอปพลิเคชันอาจกำลังตรวจสอบพอร์ตอนุกรม หรือกำลังอัปเดตหน้าจอกราฟิก หากเป็นเช่นนั้น ไดรเวอร์อุปกรณ์จะพิจารณาว่าแอปพลิเคชันไม่ได้อยู่ในสถานะว่าง และจะยกเลิกการเรียกใช้ฟังก์ชันเปลี่ยนสถานะการใช้พลังงานของเคอร์เนล โดยส่งข้อมูลกลับขึ้นไปยังเลเยอร์ต่างๆ และอนุญาตให้แอปพลิเคชันทำงานต่อได้
COMMAND.COMใน DR DOS 5.0 และเวอร์ชันที่สูงกว่า จะใช้คำสั่งภายในIDLEที่รับON|OFFพารามิเตอร์เพื่อเปิดใช้งานหรือปิดใช้งานการตรวจจับสถานะว่างแบบไดนามิก[ 6 ]
การตรวจจับเมื่อแอปพลิเคชันไม่ได้ใช้งาน
แอปพลิเคชันจะอยู่ในสถานะไม่ได้ใช้งาน หากกำลังรอเหตุการณ์ภายนอกเกิดขึ้น เช่น การกดแป้นพิมพ์หรือการเคลื่อนไหวของเมาส์ หรือรอเวลาผ่านไปช่วงหนึ่ง เคอร์เนลของ DR-DOS จะตรวจสอบ การเรียก ใช้ API ของ DOS ทั้งหมด เพื่อสร้างโปรไฟล์พฤติกรรมของแอปพลิเคชัน การเรียกใช้ API ในบางรูปแบบบ่งชี้ว่าแอปพลิเคชันอยู่ในสถานะไม่ได้ใช้งาน
ไดรเวอร์$IDLE$สามารถแยกแยะความแตกต่างเล็กน้อยระหว่างโปรแกรมที่ไม่ได้ใช้งานอย่างแท้จริง เช่น โปรแกรมที่ตรวจสอบแป้นพิมพ์ซ้ำๆ ในลูป และโปรแกรมที่กำลังทำงานอยู่แต่ก็ยังตรวจสอบแป้นพิมพ์เพื่อทดสอบว่ามีการกดปุ่มยกเลิกหรือไม่ ไดรเวอร์จะแยกแยะความแตกต่างนี้โดยการตรวจสอบเวลาที่ใช้ในการหยุดทำงาน หากเวลาอยู่ในช่วงเวลาที่กำหนด ไดรเวอร์จะถือว่าโปรแกรมไม่ได้ใช้งาน เช่น กำลังตรวจสอบแป้นพิมพ์ซ้ำๆ ในลูป หากเวลาอยู่นอกเหนือขีดจำกัดที่กำหนด ไดรเวอร์จะถือว่ามีการประมวลผลบางอย่างเกิดขึ้นระหว่างการตรวจสอบแป้นพิมพ์ และอนุญาตให้แอปพลิเคชันทำงานต่อได้โดยไม่ต้องเปลี่ยนสถานะพลังงาน ตัวแปรโลคอล IDLE_CNTDN ระบุเวลาที่จะใช้เปรียบเทียบกับเวลาจริงที่ใช้ในการหยุดทำงาน ค่าของตัวแปรนี้จะถูกคำนวณแบบไดนามิกเมื่อเริ่มต้นระบบและคำนวณใหม่เป็นระยะ
ที่มาของ BatteryMAX
เทคนิคการตรวจจับสถานะว่างถูกนำมาใช้ครั้งแรกเพื่อปรับปรุงการทำงานแบบมัลติทาสก์ของแอปพลิเคชัน DOS ที่เดิมทำงานแบบซิงเกิลทาสก์ ในระบบปฏิบัติการ Concurrent DOS 386 (CDOS386) ของ Digital Research ซึ่งรองรับการทำงานแบบมัลติทาสก์และมัลติยูเซอร์
โปรแกรมที่เขียนขึ้นสำหรับระบบปฏิบัติการแบบทำงานทีละอย่าง เช่น MS-DOS/PC DOS อาจทำงานวนซ้ำไม่รู้จบจนกว่าจะถูกขัดจังหวะ ตัวอย่างเช่น เมื่อรอให้ผู้ใช้กดปุ่มใดปุ่มหนึ่ง แม้ว่านี่จะไม่ใช่ปัญหาหากไม่มีกระบวนการอื่นรอทำงานอยู่ แต่ก็เป็นการสิ้นเปลืองเวลาประมวลผลอันมีค่าซึ่งอาจนำไปใช้กับโปรแกรมอื่น ๆ ในสภาพแวดล้อมแบบทำงานหลายอย่างพร้อมกัน/ผู้ใช้หลายคน เช่น CDOS386 ได้ แอปพลิเคชันที่ออกแบบมาสำหรับสภาพแวดล้อมแบบทำงานหลายอย่างพร้อมกันจะใช้การเรียก API เพื่อ "พัก" เมื่อไม่ได้ใช้งานเป็นระยะเวลาหนึ่ง แต่แอปพลิเคชัน DOS ทั่วไปไม่ได้ทำเช่นนั้น ดังนั้นจึงต้องใช้การตรวจจับการไม่ได้ใช้งาน
ระบบปฏิบัติการ Concurrent DOS 386 มีฟังก์ชันตรวจจับสถานะไม่ได้ใช้งาน (Idle Detection) ในเคอร์เนลของระบบปฏิบัติการ ซึ่งจะตรวจสอบ การเรียกใช้ API ของ DOSเพื่อพิจารณาว่าแอปพลิเคชันกำลังทำงานที่เป็นประโยชน์หรือไม่ได้ใช้งาน หากไม่ได้ใช้งาน กระบวนการนั้นจะถูกระงับ ทำให้ตัวจัดการการจัดสรร (dispatcher) สามารถจัดตารางการทำงานของกระบวนการอื่นได้
การฟ้องร้องคดีสิทธิบัตร
BatteryMAX และสิทธิบัตร "การตรวจจับสถานะไม่ได้ใช้งาน" มีบทบาทสำคัญในข้อกล่าวหาการละเมิดสิทธิบัตรที่เกี่ยวข้องกับการจัดการพลังงานซอฟต์แวร์ภายใต้การควบคุมของระบบปฏิบัติการ
เมื่อวันที่ 15 พฤษภาคม 2552 บริษัทที่ปรึกษาด้านทรัพย์สินทางปัญญาเซนต์แคลร์ ได้ยื่นฟ้องคดีแพ่งหมายเลข 09-354 ต่อศาลแขวงสหรัฐอเมริกา เขตเดลาแวร์ โดยมีจำเลยคือบริษัท Acer , Dell , GatewayและLenovoและเมื่อวันที่ 18 กันยายน 2552 ได้ยื่นฟ้องคดีแพ่งหมายเลข 09-704 ต่อบริษัท AppleและToshibaโดยกล่าวหาว่าบริษัทเหล่านี้ละเมิดสิทธิบัตรของสหรัฐอเมริกาหลายฉบับที่พวกเขาเป็นเจ้าของ ซึ่งเกี่ยวข้องกับการจัดการพลังงานซอฟต์แวร์ภายใต้การควบคุมของระบบปฏิบัติการ
บริษัทเซนต์แคลร์กล่าวอ้างว่าเฮนรี ฟุงได้คิดค้นซอฟต์แวร์การจัดการพลังงานภายใต้การควบคุมของระบบปฏิบัติการ และกล่าวหาว่าบริษัทเหล่านี้ละเมิดสิทธิบัตรของเซนต์แคลร์ ดังนั้นจึงต้องจ่ายค่าลิขสิทธิ์ให้แก่ เซนต์แคลร์ ไมโครซอฟต์ได้เข้ามาแทรกแซงในนามของจำเลยและยื่น คำร้องขอคำพิพากษาชี้ขาดต่อเซนต์แคลร์เมื่อวันที่ 7 เมษายน 2553 โดยขอให้ศาลพิพากษาว่าไม่มีการละเมิดและสิทธิบัตรของฟุงเป็นโมฆะ (DI 1, CA No. 10-282) อินเทลได้ยื่นคำร้องขอเข้ามาแทรกแซงในนามของจำเลยและได้รับการอนุมัติเมื่อวันที่ 4 มิถุนายน 2553 (DI 178, CA No. 09-354)
บริษัทกฎหมายPerkins Coie ในซีแอตเติล ซึ่งเป็นตัวแทนของจำเลย ได้ค้นพบ BatteryMAX และสิทธิบัตรการตรวจจับสถานะไม่ได้ใช้งานของ Gross ในระหว่าง การค้นหา ข้อมูลก่อนหน้าสิทธิบัตรของ Gross มีวันหมดอายุ สิทธิบัตรก่อน สิทธิบัตรของ Fung ซึ่งหากพิสูจน์ได้จะทำให้คดีของ St. Clair เสียหาย เมื่อวันที่ 28 กุมภาพันธ์ 2011 Gross ได้รับการว่าจ้างจาก Intel ในฐานะผู้เชี่ยวชาญเฉพาะด้านเพื่อให้ การเป็นพยาน ผู้เชี่ยวชาญแก่จำเลยในคดีนี้ Gross ได้ให้หลักฐานในรายงานผู้เชี่ยวชาญ ของเขา ว่า เขาต่างหากที่เป็นผู้คิดค้นการจัดการพลังงานซอฟต์แวร์ภายใต้การควบคุมของระบบปฏิบัติการ ไม่ใช่ Fung และอ้างถึงสิทธิบัตรการตรวจจับสถานะไม่ได้ใช้งานและการมีอยู่ของ BatteryMAX เป็นหลักฐานยืนยันเรื่องนี้
St. Clair ยื่นคำร้องขอให้ยกเว้นความเห็นเกี่ยวกับ BatteryMAX โดยพยายามให้รายงานผู้เชี่ยวชาญของ Gross ถูกยกเลิก แต่เมื่อวันที่ 29 มีนาคม 2013 ศาลแขวงได้ปฏิเสธคำร้องของ St. Clair โดยประกาศว่าคำให้การของ Gross สำหรับจำเลยนั้นสามารถรับฟังได้[ 7 ]โดยระบุว่า "ศาลเห็นด้วยกับจำเลยว่ามีหลักฐานยืนยันเพียงพอว่า BatteryMAX มีวางจำหน่ายต่อสาธารณะก่อนวันที่สิทธิบัตร Fung มีผลบังคับใช้ นอกจากนี้ ศาลยังสรุปได้ว่าแม้ว่า BatteryMAX จะไม่ได้มีมาก่อนสิทธิบัตร Fung คำให้การของนาย Gross […] ก็ยังคงมีความเกี่ยวข้องและเป็นประโยชน์ต่อผู้พิจารณาข้อเท็จจริงในการสอบสวนเรื่องความชัดเจน "
ดูเพิ่มเติม
ลิงก์ภายนอก
- "การนำระบบจัดการพลังงาน (BatteryMAX) มาใช้ใน DR-DOS" Caldera, Inc. 1997. เก็บถาวรจากต้นฉบับเมื่อ 2017-01-08 . เรียกดูเมื่อ2017-01-08 .
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ แบตเตอรี่แม็กซ์
BatteryMAX คือระบบตรวจจับสถานะไม่ได้ใช้งานที่ใช้สำหรับการจัดการพลังงานคอมพิวเตอร์ภายใต้การควบคุมของระบบปฏิบัติการ พัฒนาขึ้นที่ ศูนย์พัฒนาในยุโรป (EDC) ของ Digital Research, Inc.
คำอธิบาย
การประหยัดพลังงานในคอมพิวเตอร์แล็ปท็อปแบบดั้งเดิมอาศัยตัวจับเวลาการไม่ใช้งานของฮาร์ดแวร์เพื่อตรวจสอบว่าคอมพิวเตอร์อยู่ในสถานะไม่ได้ใช้งานหรือไม่...
ภาพรวมการทำงาน
BatteryMAX ใช้เทคนิคการตรวจจับสถานะไม่ได้ใช้งานแบบไดนามิกเพื่อประหยัดพลังงาน โดยตรวจจับว่าแอปพลิเคชันกำลังทำอะไรอยู่ (ว่าอยู่ในสถานะไม่ได้ใช้งานหรือไม่) และสลับสถานะการใช้พลังงาน (เข้าสู่โหมดประหยัดพลังงาน) จึงช่วยยืดอายุการใช้งานแบตเตอรี่ของผลิตภัณฑ์
การตรวจจับเมื่อแอปพลิเคชันไม่ได้ใช้งาน
แอปพลิเคชันจะอยู่ในสถานะไม่ได้ใช้งาน หากกำลังรอเหตุการณ์ภายนอกเกิดขึ้น เช่น การกดแป้นพิมพ์หรือการเคลื่อนไหวของเมาส์ หรือรอเวลาผ่านไปช่วงหนึ่ง เคอร์เนลของ DR-DOS จะตรวจสอบ การเรียก ใช้ API ของ DOS ทั้งหมด เพื่อสร้างโปรไฟล์พฤติกรรมของแอปพลิเคชัน การเรียกใช้ API...