Cara Membuat Sistem Operasi Komputer (dengan Gambar)

Isi kandungan:

Cara Membuat Sistem Operasi Komputer (dengan Gambar)
Cara Membuat Sistem Operasi Komputer (dengan Gambar)

Video: Cara Membuat Sistem Operasi Komputer (dengan Gambar)

Video: Cara Membuat Sistem Operasi Komputer (dengan Gambar)
Video: Mengubah Start Menu Windows 8 Seperti Start Windows 7, Agar Lebih Menarik dan mudah untuk digunakan 2024, Mungkin
Anonim

Sistem operasi membolehkan pengguna berinteraksi dengan perkakasan komputer. Sistem ini terdiri daripada ratusan ribu baris kod. Biasanya sistem operasi dibuat menggunakan bahasa pengaturcaraan C #, C, C ++, dan pemasangan. Sistem operasi membolehkan anda melihat-lihat komputer sambil menyimpan dan melaksanakan perintah. Jangan fikir membuat sistem operasi itu mudah. Ia memerlukan banyak pengetahuan untuk membuatnya.

Langkah

Buat Sistem Operasi Komputer Langkah 1
Buat Sistem Operasi Komputer Langkah 1

Langkah 1. Pertama sekali, pelajari tentang pengaturcaraan

Bahasa perhimpunan sangat penting; sangat disarankan agar anda mempelajari bahasa tahap tinggi pelengkap lain seperti bahasa C.

Buat Sistem Operasi Komputer Langkah 2
Buat Sistem Operasi Komputer Langkah 2

Langkah 2. Tentukan media yang anda mahu gunakan untuk memuatkan OS

Media ini boleh menjadi pemacu CD, pemacu DVD, pemacu kilat, pemacu keras, cakera liut, atau PC lain.

Buat Sistem Operasi Komputer Langkah 3
Buat Sistem Operasi Komputer Langkah 3

Langkah 3. Tentukan idea teras SO

Sebagai contoh, pada Windows, idea utama adalah GUI yang mudah digunakan dan banyak keselamatan.

Buat Sistem Operasi Komputer Langkah 4
Buat Sistem Operasi Komputer Langkah 4

Langkah 4. Tentukan platform pemproses apa yang akan disokong oleh sistem operasi anda

IA-32, ARM, dan x86_64 adalah platform yang paling biasa untuk komputer peribadi. Jadi, semuanya adalah pilihan terbaik anda.

Buat Sistem Operasi Komputer Langkah 5
Buat Sistem Operasi Komputer Langkah 5

Langkah 5. Tentukan sama ada anda lebih suka melakukan semuanya sendiri dari awal, atau adakah kernel sudah tersedia yang anda mahu bina

Sebagai contoh, Linux dari awal adalah projek untuk orang yang ingin membina distro Linux mereka sendiri.

Buat Sistem Operasi Komputer Langkah 6
Buat Sistem Operasi Komputer Langkah 6

Langkah 6. Tentukan sama ada anda akan menggunakan boot-loader anda sendiri atau yang telah dibina sebelumnya seperti Grand Unified Bootloader (GRUB)

Mengekodkan bootloader sendiri memerlukan pengetahuan yang luas mengenai perkakasan dan BIOS. Akibatnya, langkah ini dapat menghalang jadual pengaturcaraan kernel yang sebenarnya.

Buat Sistem Operasi Komputer Langkah 7
Buat Sistem Operasi Komputer Langkah 7

Langkah 7. Tentukan bahasa pengaturcaraan apa yang akan digunakan

Tidak masalah mempunyai sistem operasi dalam bahasa seperti Pascal atau BASIC, tetapi anda harus menggunakan C atau Assembly. Pemasangan sangat diperlukan, kerana beberapa bahagian penting dalam sistem operasi memerlukannya. Sebaliknya, bahasa C ++ mengandungi kata kunci yang memerlukan SO penuh lain untuk dijalankan.

Untuk menyusun sistem operasi dari kod C atau C ++, sudah tentu anda akan menggunakan satu penyusun atau yang lain. Oleh itu, adalah idea yang baik untuk merujuk panduan pengguna / manual / dokumentasi untuk penyusun C / C ++ pilihan anda, sama ada disertakan dalam perisian atau terdapat di laman web pengedar. Anda perlu mengetahui banyak perkara rumit mengenai penyusun dan, untuk pengembangan C ++, anda perlu mengetahui tentang skema pengatur kompilator dan ABInya. Anda diharapkan dapat memahami pelbagai format yang dapat dilaksanakan (ELF, PE, COFF, binary asas, dll.), Dan memahami bahawa format Windows eksklusif, PE (.exe), dilindungi hak cipta

Buat Sistem Operasi Komputer Langkah 8
Buat Sistem Operasi Komputer Langkah 8

Langkah 8. Tentukan antara muka pengaturcaraan aplikasi (API) anda

Satu API yang baik untuk dipilih ialah POSIX kerana didokumentasikan dengan baik. Semua sistem Unix mempunyai sokongan sekurang-kurangnya separa untuk POSIX. Oleh itu, menyambungkan program Unix ke OS anda semestinya mudah.

Buat Sistem Operasi Komputer Langkah 9
Buat Sistem Operasi Komputer Langkah 9

Langkah 9. Tentukan reka bentuk anda

Terdapat kernel monolitik dan kernel mikro. Kernel monolitik menerapkan semua layanan dalam kernel, sementara kernel mikro memiliki kernel kecil yang dibundel dengan layanan penyebaran daemon pengguna. Secara umum, kernel monolitik lebih cepat, tetapi mikrokernel mempunyai pengasingan dan kebolehpercayaan kesalahan yang lebih baik.

Buat Sistem Operasi Komputer Langkah 10
Buat Sistem Operasi Komputer Langkah 10

Langkah 10. Pertimbangkan untuk berkembang dan bekerja dalam satu pasukan

Dengan begitu, lebih sedikit masa untuk menyelesaikan lebih banyak masalah, yang mungkin akan mempercepat pembinaan OS yang lebih baik.

Buat Sistem Operasi Komputer Langkah 11
Buat Sistem Operasi Komputer Langkah 11

Langkah 11. Jangan lap cakera keras anda sepenuhnya

Ingat, memadam pemacu akan memadamkan semua data di dalamnya! Gunakan GRUB atau boot manager lain untuk menggandakan sistem anda dengan OS lain sehingga OS anda berfungsi sepenuhnya.

Buat Sistem Operasi Komputer Langkah 12
Buat Sistem Operasi Komputer Langkah 12

Langkah 12. Mulakan kecil

Mulakan dengan perkara kecil seperti memaparkan teks dan jeda sebelum beralih ke perkara seperti pengurusan memori dan kerja gabungan. Pastikan juga anda membuat versi 32 bit dan 64 bit.

Buat Sistem Operasi Komputer Langkah 13
Buat Sistem Operasi Komputer Langkah 13

Langkah 13. Simpan sandaran kod sumber terakhir yang berfungsi

Langkah ini berguna sebagai perlindungan sekiranya ada yang tidak kena dengan versi SO atau pembangunan semasa. Sekiranya komputer anda rosak dan tidak dapat boot, ada baiknya anda mempunyai salinan kedua untuk digunakan agar anda dapat menyelesaikan masalahnya.

Buat Sistem Operasi Komputer Langkah 14
Buat Sistem Operasi Komputer Langkah 14

Langkah 14. Pertimbangkan untuk menguji sistem operasi baru anda dengan mesin maya

Daripada reboot komputer anda setiap kali anda membuat perubahan atau setelah menghantar fail dari komputer pengembangan ke mesin uji anda, anda boleh menggunakan aplikasi mesin maya untuk menjalankan OS anda semasa OS anda sedang berjalan. Aplikasi VM semasa termasuk: VMWare (yang juga mempunyai produk pelayan yang tersedia secara percuma), alternatif sumber terbuka, Bochs, Microsoft Virtual PC (tidak serasi dengan Linux), dan Oracle VirtualBox.

Buat Sistem Operasi Komputer Langkah 15
Buat Sistem Operasi Komputer Langkah 15

Langkah 15. Lancarkan "calon pelepas" atau versi Beta

Langkah ini akan membolehkan pengguna memberitahu anda tentang kemungkinan masalah dengan sistem operasi anda.

Buat Sistem Operasi Komputer Langkah 16
Buat Sistem Operasi Komputer Langkah 16

Langkah 16. Sistem operasi juga harus mesra pengguna

Pastikan anda menambah ciri mesra pengguna, jadikan ini sebagai bahagian penting dalam reka bentuk anda.

Petua

  • Periksa kemungkinan kebuntuan dan pepijat lain. Bug, kebuntuan, dan masalah lain akan mempengaruhi projek membina sistem operasi anda.
  • Pastikan anda melaksanakan ciri keselamatan sebagai keutamaan jika anda mahu sistem berjalan dengan baik.
  • Gunakan laman web seperti OSDev dan OSDever untuk membantu anda mengembangkan sistem operasi anda sendiri. Harap maklum bahawa untuk kebanyakan tujuan, komuniti OSDev.org akan lebih senang jika anda menggunakan wiki mereka, dan tidak menyertai forum. Sekiranya anda memutuskan untuk menyertai forum, ada prasyarat: anda perlu benar-benar mengetahui mengenai C atau C ++, dan bahasa perhimpunan x86. Anda juga harus memahami konsep pengaturcaraan umum dan kompleks seperti Senarai Berkaitan, Antrian, dll. Komuniti OSDev, dalam peraturannya, secara tegas menyatakan bahawa komunitinya tidak diciptakan untuk memelihara programmer baru.
  • Jangan ikut dengan forum OSDev.org dan kemudian tanyakan soalan yang jelas. Anda hanya akan diminta membaca panduan ini. Baca Wikipedia dan arahan untuk peralatan apa sahaja yang anda mahu gunakan.
  • Sekiranya anda ingin mengembangkan sistem operasi, anda pasti dianggap sebagai "tuhan" pengaturcaraan.
  • Anda juga harus membaca manual pemproses untuk seni bina pemproses yang telah anda pilih; sama ada x86 (Intel), ARM, MIPS, PPC, dll. Manual untuk seni bina pemproses mudah didapati menggunakan carian Google ("manual Intel", "manual ARM", dll.).
  • Setelah semua kerja pembangunan selesai, tentukan sama ada anda ingin melepaskan kod tersebut sebagai kod terbuka, atau dengan hak cipta.
  • Jangan mulakan projek sistem operasi untuk memulakan pembelajaran pengaturcaraan. Sekiranya anda tidak tahu mengenai C, C ++, Pascal, atau beberapa bahasa lain yang sesuai, termasuk manipulasi penunjuk, manipulasi bit tahap rendah, pergeseran bit, bahasa pemasangan sebaris, dll., Anda tidak bersedia untuk sistem operasi pembangunan.
  • Membuat partisi yang sama sekali baru untuk 'mengembangkan' SO mungkin merupakan pilihan yang baik.
  • Sekiranya anda mahukan cara yang mudah, pertimbangkan distro Linux seperti Fedora Revisor, Custom Nimble X, Puppy Remaster, PCLinuxOS Mk LiveCD, atau SUSE Studio dan SUSE KIWI. Walau bagaimanapun, sistem operasi yang anda buat adalah milik syarikat yang memulakan perkhidmatan terlebih dahulu (walaupun anda berhak untuk menyebarkannya secara bebas, ubah dan jalankan seperti yang anda mahukan di bawah GPL).

Amaran

  • Anda tidak akan mendapat sistem operasi sepenuhnya dalam masa dua minggu. Mulakan dengan SO yang boleh di boot, kemudian beralih ke barang yang lebih sejuk.
  • Dengan tidak sengaja menulis sistem operasi anda pada cakera keras boleh merosakkannya sepenuhnya. Berhati-hati.
  • Sekiranya anda melakukan sesuatu yang tidak digalakkan, seperti menulis byte rawak pada port I / O rawak, anda akan merosakkan OS anda, dan (secara teori) boleh membakar perkakasan anda.
  • Jangan harap sistem operasi senang dibina. Terdapat banyak saling bergantung yang rumit. Sebagai contoh, untuk membuat sistem operasi yang mampu menangani beberapa pemproses, Pengurus Memori anda mesti mempunyai mekanisme "penguncian" untuk mengelakkan beberapa pemproses mengakses sumber yang sama pada masa yang sama. "Kunci" yang digunakan untuk ini memerlukan penjadual untuk memastikan bahawa hanya satu pemproses yang mengakses sumber daya kritikal pada waktu tertentu dan semua yang lain harus menunggu. Sebenarnya, penjadual bergantung kepada kehadiran Pengurus Memori. Ini adalah contoh kebergantungan jalan buntu. Tidak ada kaedah standard untuk menyelesaikan masalah seperti ini; setiap pengaturcara sistem operasi diharapkan cukup mahir untuk mengetahui cara sendiri untuk menanganinya.

Sumber tambahan

  • Garis Panduan: Linux Dari Awal
  • Pemuat but: GRUB
  • Aplikasi mesin maya: Bochs, VM Ware, XM Virtual Box.
  • Manual pemproses: Manual Intel
  • Laman pengembangan SO: OSDev, OSDever

Disyorkan: