Những gì bạn cần làm là thiết kế hệ điều hành. Ngay cả khi, ví dụ, nếu bạn quyết định nó phải là một hệ thống giống như UNIX, vẫn có rất nhiều quyết định được đưa ra. Bạn muốn nó giống như UNIX bao nhiêu? Những phần nào của UNIX mà bạn thích và bạn nghĩ cần cải thiện điều gì?
Nếu bạn không đặt nó giống như UNIX, bạn sẽ có nhiều câu hỏi hơn để trả lời: các quy trình có nên tạo thành một cây hay chúng "phẳng"? Những loại giao tiếp liên quá trình nào bạn muốn hỗ trợ? Bạn có muốn nó là đa người dùng, hoặc chỉ đa tác vụ (hoặc có thể là tác vụ đơn)? Bạn có muốn nó là một hệ thống thời gian thực? Mức độ cô lập nào bạn muốn cung cấp giữa các nhiệm vụ? Nơi nào bạn muốn nó rơi vào thang đo nguyên khối so với hạt nhân vi mô? Ở mức độ nào (nếu có) bạn có muốn nó hỗ trợ hoạt động phân tán không?
Tôi thường muốn mưu chống lại học hạt nhân Linux cho cảm hứng của bạn. Điều đó không có gì chống lại hạt nhân Linux, nhưng một thực tế đơn giản là Linux chủ yếu dành cho sử dụng sản xuất, không phải cho giáo dục. Nó có rất nhiều tối ưu hóa, hack tương thích ngược, v.v., cực kỳ hữu ích cho sản xuất nhưng có nhiều khả năng gây mất tập trung hơn là giáo dục.
Nếu bạn có thể tìm thấy nó, một bản sao của cuốn sách Lion ( Bình luận của Lions về phiên bản UNIX thứ 6 , với Mã nguồn , của John Lions) là điểm khởi đầu dễ dàng hơn nhiều. Phiên bản thứ 6 UNIX vẫn nhỏ và đủ đơn giản để đọc và hiểu khá nhanh, mà không phải là một hệ thống đồ chơi đơn giản hóa.
Nếu bạn dự định nhắm mục tiêu x86 (ít nhất là chủ yếu), bạn cũng có thể muốn xem MMURTL V 1.0 của Richard Burgess. Điều này trình bày một hệ thống cho x86 sử dụng phần cứng x86 nhiều hơn so với dự định ban đầu của các nhà thiết kế CPU - điều mà hầu hết các hệ thống thực sự đều có lợi cho tính di động đối với các CPU khác. Như bạn có thể đoán, điều này có xu hướng được định hướng nhiều hơn về phần cuối của phần cứng. Các bản in có vẻ đắt tiền và khó tìm, nhưng bạn có thể tải xuống văn bản và mã miễn phí.
May mắn thay, có khá nhiều khả năng nữa - Thiết kế và triển khai hệ điều hành , chẳng hạn của Andrew Tanenbaum và Albert Woodhull.