- TacOS เป็นระบบปฏิบัติการแบบคล้าย UNIX ที่มีเคอร์เนลของตัวเองซึ่งเขียนด้วย C และแอสเซมบลี
- มีความสามารถในการรันโปรแกรมใน user space ได้หลากหลาย รวมถึง DOOM
- มีฟีเจอร์อย่าง VFS, ตัวจัดตารางเวลา, TempFS, อุปกรณ์, การสลับคอนเท็กซ์, การจัดการหน่วยความจำเสมือน และการจัดสรร physical page frame
- สามารถรันได้ทั้งบนฮาร์ดแวร์จริงและ Qemu emulator
- เป็นระบบปฏิบัติการที่พัฒนาขึ้นเป็นงานอดิเรก จึงไม่เหมาะกับการใช้งานจริง
แนะนำ TacOS
- TacOS เป็น เคอร์เนลแบบคล้าย UNIX ที่เขียนด้วย C และแอสเซมบลี
- สามารถรันโปรแกรมขนาดเล็กใน user space ได้หลายตัว รวมถึง DOOM
- รองรับฟีเจอร์อย่าง VFS, ตัวจัดตารางเวลา, TempFS, อุปกรณ์, การสลับคอนเท็กซ์, การจัดการหน่วยความจำเสมือน, การจัดสรร physical page frame
- สามารถรันได้ทั้งบนฮาร์ดแวร์จริงและ Qemu emulator
- เป็นระบบปฏิบัติการที่พัฒนาขึ้นเป็นงานอดิเรก และยังไม่อยู่ในสภาพพร้อมใช้งานอย่างสมบูรณ์
เริ่มต้นอย่างรวดเร็ว
ไลเซนส์
- TacOS ใช้สัญญาอนุญาต Mozilla Public License 2.0
- ดูข้อมูลเพิ่มเติมได้ในไฟล์
LICENSE
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
สวัสดี ยินดีด้วย! คุณคงภูมิใจน่าดู การเลือก DOOM มาใช้เป็นการพิสูจน์แนวคิดที่ดีมาก
เจ๋งดี แต่ทาโก้ของคุณรัน DOOM ได้ไหม??
เท่มาก แต่ทำไมถึงเลือกใช้ภาษาที่ไม่ปลอดภัย ทั้งที่ทุกวันนี้มีภาษาระดับล่างที่ปลอดภัยต่อหน่วยความจำแล้ว? เรารู้อยู่แล้วว่าบั๊กด้านความปลอดภัยส่วนใหญ่เกี่ยวข้องกับหน่วยความจำ
อาจจะออกนอกเรื่องนิดหน่อย แต่ผมสงสัยเรื่องที่คล้ายกันนี้อยู่เหมือนกัน เคยมีความพยายามทำเกมที่บูตตรงบนฮาร์ดแวร์ PC สมัยใหม่เลยไหม? คือเข้าเกมได้ทันทีโดยไม่ต้องโหลดระบบปฏิบัติการเต็ม ๆ คล้ายกับเครื่องเกมคอนโซลยุคเก่า ถ้าอยากให้เรียบง่ายไว้ก่อน พวก wifi, bt, GPU อาจใช้งานได้ยากหากไม่มีไดรเวอร์สมัยใหม่ แต่คีย์บอร์ดกับเมาส์ดูเหมือนจะยังพอเข้าถึงผ่าน BIOS พื้นฐานได้ เลยคิดว่าน่าจะเป็นไปได้ (อาจใช้คำไม่ตรงนัก แต่หวังว่าจะพอเข้าใจประเด็น)
สวัสดีครับ unmapped (ผมใช้ชื่อ ThatOSDeveloper บน GitHub และ discord) ผมไม่รู้มาก่อนเลยว่าคุณรัน DOOM ได้ เท่มาก ผมมีคำถามอยู่สองสามข้อ นี่คือ DOOM ต้นฉบับหรือเปล่า มันอยู่บนดิสก์หรืออยู่ใน initramfs แล้วคุณใช้ wad ของ DOOM แบบฟรีหรือแชร์แวร์ร่วมกับเอนจินที่ใช้อยู่ไหม?
ยอดเยี่ยมมาก ผมอยากมีทักษะพอจะทำอะไรแบบนี้ได้ แต่เดาว่าคุณคงต้องอ่านสเปกเยอะมากกว่าจะทำได้สำเร็จ ซึ่งนั่นเป็นจุดอ่อนของผมเลย
ยินดีต้อนรับสู่คลับ! ผมเคยทำอะไรเกือบจะเหมือนกัน และผมชอบความสงบใจของการทำสิ่งที่รู้แน่ว่าจะไม่จบลงเป็นผลิตภัณฑ์จริง ๆ
เป็นโปรเจ็กต์ที่เจ๋งมาก! ใน TacOS คุณจัดการเรื่อง process isolation และ scheduling อย่างไร?
อยากรู้เรื่อง TacOS เพิ่มอีก คุณจัดการการรันหลายโปรแกรมพร้อมกันอย่างปลอดภัยอย่างไร?