ระบบปฏิบัติการนี้กำลังสร้างระหว่างการกำหนดชั้นเรียน รหัสเป็นการทดลองและยังไม่ทดลอง แต่ควรใช้งานได้
ระบบปฏิบัติการใช้ตัวกำหนดตารางเวลา ROUN ROBIN ง่าย ๆ และสลับบริบททุกรอบนาฬิกา 262144 พฤติกรรมนี้สามารถควบคุมได้โดยการตั้งค่า OCR0A และ prescalers ของ Timer0 คุณไม่สามารถใช้ Timer0 ในแอปพลิเคชันของคุณได้โดยเฉพาะผู้กำหนดตารางเวลา
เพียงวางไฟล์ที่ขึ้นต้นด้วย os ในโครงการของคุณ แก้ไข os_config.h เพื่อให้เหมาะกับความต้องการของคุณ จากหลักของคุณโทร os_init() และสร้างงานของคุณด้วย os_task_add(task_func, task_data) ในการเริ่มต้นกำหนดตารางเวลาให้โทร os_run() โปรดทราบว่าการโทรนี้ไม่เคยส่งคืนดังนั้นรหัสที่ตามมาจะไม่ถูกเรียกใช้งาน
โปรดทราบว่างานปัจจุบันอาจไม่สิ้นสุดและ ต้อง ถูกยกเลิกโดยใช้ os_current_task_kill() ในการเข้าถึงตัวชี้โมฆะที่มอบให้กับ os_task_add ให้โทร os_current_task_get_data()
โปรดอย่าพยายามใช้การเรียกซ้ำหรือสแต็คการโทรลึกเนื่องจากคุณมีสแต็กที่ จำกัด มาก คุณไม่สามารถใช้ Timer0 ได้เพราะใช้สำหรับตัวกำหนดตารางเวลา! อย่าพยายามขัดจังหวะการขัดจังหวะใหม่เมื่อใช้กิจวัตรการบริการขัดจังหวะแบบกำหนดเอง!
ระบบปฏิบัติการสามารถกำหนดค่าได้ในเวลาคอมไพล์โดยใช้ define-macros ต่อไปนี้ใน os_config.h :
OS_STACK_SIZE ควบคุมขนาดสแต็กสำหรับงาน เดียวOS_TASK_COUNT ควบคุมจำนวนงานที่ อาจ สร้างพร้อมกัน ลิขสิทธิ์ 2020 Stephan Brunner
ได้รับอนุญาตโดยไม่ต้องเสียค่าใช้จ่ายสำหรับบุคคลใด ๆ ที่ได้รับสำเนาซอฟต์แวร์นี้และไฟล์เอกสารที่เกี่ยวข้อง ("ซอฟต์แวร์") เพื่อจัดการในซอฟต์แวร์โดยไม่มีการ จำกัด รวมถึง แต่ไม่ จำกัด เฉพาะสิทธิ์ในการใช้สำเนาดัดแปลงผสานเผยแพร่เผยแพร่
ประกาศลิขสิทธิ์ข้างต้นและประกาศการอนุญาตนี้จะรวมอยู่ในสำเนาทั้งหมดหรือส่วนสำคัญของซอฟต์แวร์
ซอฟต์แวร์มีให้ "ตามสภาพ" โดยไม่มีการรับประกันใด ๆ ไม่ว่าโดยชัดแจ้งหรือโดยนัยรวมถึง แต่ไม่ จำกัด เฉพาะการรับประกันความสามารถในการค้าการออกกำลังกายสำหรับวัตถุประสงค์เฉพาะและการไม่เข้าร่วม ไม่ว่าในกรณีใดผู้เขียนหรือผู้ถือลิขสิทธิ์จะต้องรับผิดชอบต่อการเรียกร้องความเสียหายหรือความรับผิดอื่น ๆ ไม่ว่าจะเป็นการกระทำของสัญญาการละเมิดหรืออื่น ๆ ที่เกิดขึ้นจากหรือเกี่ยวข้องกับซอฟต์แวร์หรือการใช้งานหรือการติดต่ออื่น ๆ ในซอฟต์แวร์