Operatsion tizim foydalanuvchiga kompyuter uskunalari bilan ishlash imkonini beradi. Tizim yuz minglab kod satrlaridan iborat. Odatda operatsion tizim C#, C, C ++ va montaj dasturlash tillari yordamida tuziladi. Operatsion tizim buyruqlarni saqlash va bajarish paytida kompyuterni ko'rib chiqish imkonini beradi. Operatsion tizim yaratish oson deb o'ylamang. Uni yaratish uchun ko'p bilim kerak.
Qadam
Qadam 1. Avvalo, dasturlash haqida bilib oling
Assambleyaning tili juda muhim; C tili kabi boshqa bir-birini to'ldiruvchi yuqori darajali tilni o'rganish tavsiya etiladi.
Qadam 2. OSni yuklash uchun qaysi vositadan foydalanmoqchi ekanligingizni hal qiling
Bu vosita CD -disk, DVD -disk, flesh -disk, qattiq disk, disket yoki boshqa kompyuter bo'lishi mumkin.
3 -qadam. SO ning asosiy g'oyasini aniqlang
Masalan, Windows-da asosiy fikr-bu foydalanish uchun qulay GUI va ko'p xavfsizlik.
Qadam 4. Sizning operatsion tizimingiz qaysi protsessor platformasini qo'llab -quvvatlashini aniqlang
IA-32, ARM va x86_64-shaxsiy kompyuterlar uchun eng keng tarqalgan platformalar. Shunday qilib, ularning barchasi sizning eng yaxshi tanlovingizdir.
5 -qadam. Agar siz hamma narsani noldan o'zingiz qilishni xohlasangiz, qaror qabul qiling yoki siz qurmoqchi bo'lgan yadro mavjudmi?
Masalan, noldan Linux - bu o'z Linux tarqatilishini yaratmoqchi bo'lganlar uchun mo'ljallangan loyihadir.
6-qadam. Siz o'zingiz yuklaydigan yuklovchini ishlatasizmi yoki Grand Unified Bootloader (GRUB) kabi oldindan o'rnatilgan yuklovchini ishlatasizmi, hal qiling
Bootloader -ni o'zingiz kodlash uchun uskuna va BIOS haqida keng ma'lumot talab qilinadi. Natijada, bu qadam yadroni dasturlashning haqiqiy jadvaliga to'sqinlik qilishi mumkin.
Qadam 7. Qaysi dasturlash tilidan foydalanishni hal qiling
Operatsion tizim Paskal yoki BASIC kabi tilda bo'lishi yaxshi, lekin siz C yoki Assembly -dan foydalanishingiz kerak. O'rnatish juda zarur, chunki operatsion tizimning ba'zi muhim qismlari buni talab qiladi. Boshqa tomondan, C ++ tilida boshqa to'liq SO ishlashi uchun kalit so'zlar mavjud.
Operatsion tizimni C yoki C ++ kodidan kompilyatsiya qilish uchun, albatta, siz bir kompilyatordan yoki boshqasidan foydalanasiz. Shuning uchun, dasturiy ta'minotga kiritilgan yoki distribyutor veb -saytida mavjud bo'lsin, siz tanlagan C/C ++ kompilyatori uchun qo'llanma/qo'llanma/hujjatlar bilan tanishib chiqish maqsadga muvofiqdir. Siz kompilyator haqida juda ko'p murakkab narsalarni bilishingiz kerak va C ++ ni ishlab chiqish uchun siz kompilyatorning mangling sxemasi va uning ABI haqida bilishingiz kerak. Siz har xil bajariladigan formatlarni (ELF, PE, COFF, asosiy ikkilik va boshqalar) tushunasiz va Windowsning eksklyuziv formati PE (.exe) mualliflik huquqi bilan himoyalanganligini tushunasiz
8 -qadam. Ilova dasturlash interfeysini (API) aniqlang
Yaxshi tanlangan API - bu POSIX, chunki u yaxshi hujjatlashtirilgan. Barcha Unix tizimlari POSIXni hech bo'lmaganda qisman qo'llab -quvvatlaydi. Unix dasturlarini operatsion tizimingizga ulash oson bo'lishi kerak.
Qadam 9. Dizayningiz haqida qaror qabul qiling
Monolitik yadro va mikro yadro degan narsa bor. Monolitik yadrolar yadrodagi barcha xizmatlarni amalga oshiradi, mikro yadrolarda esa foydalanuvchi demon tarqatish xizmatlari bilan birlashtirilgan kichik yadrolar mavjud. Umuman olganda, monolitik yadrolar tezroq ishlaydi, lekin mikro yadrolar xato izolyatsiyasi va ishonchliligiga ega.
Qadam 10. Rivojlanish va jamoada ishlashni o'ylab ko'ring
Shunday qilib, ko'proq muammolarni hal qilish uchun kamroq vaqt kerak bo'ladi, bu esa, ehtimol, yaxshiroq OS tuzilishini tezlashtiradi.
Qadam 11. Qattiq diskni to'liq o'chirmang
Esda tutingki, diskni o'chirish undagi barcha ma'lumotlarni qaytarilmas tarzda o'chirib yuboradi! Sizning operatsion tizimingiz to'liq ishlamaguncha, tizimni boshqa OS bilan ikki marta yuklash uchun GRUB yoki boshqa yuklash menejeridan foydalaning.
12 -qadam. Kichikdan boshlang
Xotirani boshqarish va murakkab ishlarga o'tishdan oldin matnni ko'rsatish va pauza qilish kabi kichik narsalardan boshlang. Shuningdek, 32 va 64 bitli versiyalarni yaratganingizga ishonch hosil qiling.
Qadam 13. Oxirgi ishchi manba kodining zaxira nusxasini saqlang
Ushbu qadam SO yoki ishlab chiqarishning hozirgi versiyasida biror narsa noto'g'ri bo'lsa, himoya chorasi sifatida foydalidir. Agar sizning kompyuteringiz ishdan chiqsa va u yuklanmasa, muammoni hal qilish uchun ikkinchi nusxa bilan ishlash yaxshidir.
14 -qadam. Yangi operatsion tizimingizni virtual mashina bilan sinab ko'ring
O'zgartirishlar kiritilganda yoki fayllarni ishlab chiqish kompyuteridan sinov mashinangizga yuborganingizdan so'ng, kompyuterni qayta ishga tushirish o'rniga, hozirgi OS ishlayotgan vaqtda operatsion tizimni ishga tushirish uchun virtual mashina dasturidan foydalanishingiz mumkin. VM -ning joriy ilovalariga quyidagilar kiradi: VMWare (shuningdek, bepul server mahsuloti mavjud), ochiq manbali muqobillar, Bochs, Microsoft Virtual PC (Linux bilan mos kelmaydi) va Oracle VirtualBox.
15 -qadam "Nomzodni chiqarish" yoki Beta versiyasini ishga tushiring
Bu qadam foydalanuvchiga operatsion tizimingizda yuzaga kelishi mumkin bo'lgan muammolar haqida xabar berish imkonini beradi.
16 -qadam. Operatsion tizim ham foydalanuvchilar uchun qulay bo'lishi kerak
Foydalanuvchilarga qulay xususiyatlarni qo'shganingizga ishonch hosil qiling, ularni dizayningizning ajralmas qismiga aylantiring.
Maslahatlar
- Mumkin bo'lgan qulflar va boshqa xatolarni tekshiring. Xatolar, tiqilib qolish va boshqa muammolar operatsion tizimni yaratish loyihasiga ta'sir qiladi.
- Agar tizim to'g'ri ishlashini xohlasangiz, xavfsizlik xususiyatlarini birinchi o'ringa qo'yganingizga ishonch hosil qiling.
- O'zingizning operatsion tizimingizni ishlab chiqishda OSDev va OSDever kabi veb -saytlardan foydalaning. Iltimos, shuni esda tutingki, ko'pchilik maqsadlarda OSDev.org hamjamiyati, agar siz o'z vikilaridan foydalansangiz va forumga qo'shilmasangiz, xursand bo'ladi. Agar siz forumga qo'shilishga qaror qilsangiz, old shart bor: siz C yoki C ++ va x86 yig'ish tili haqida bilishingiz kerak. Siz bog'langan ro'yxatlar, navbatlar va boshqalar kabi umumiy va murakkab dasturlash tushunchalarini ham tushunishingiz kerak. OSDev hamjamiyati o'z qoidalarida o'z hamjamiyati yangi dasturchilarni tarbiyalash uchun yaratilmaganligini aniq ko'rsatib beradi.
- Qo'shilmang OSDev.org forumida va keyin aniq savol bering. Sizdan faqat ko'rsatmani o'qish so'raladi. Vikipediya va ishlatmoqchi bo'lgan uskunalar uchun ko'rsatmalarni o'qing.
- Agar siz operatsion tizimni ishlab chiqmoqchi bo'lsangiz, siz, albatta, dasturlashning "xudosi" hisoblanasiz.
- Siz tanlagan protsessor arxitekturasi uchun protsessor qo'llanmasini ham o'qib chiqishingiz kerak edi; x86 (Intel), ARM, MIPS, PPC va boshqalar bo'lsin. Protsessor arxitekturasi uchun qo'llanmalarni Google qidiruvi yordamida topish oson ("Intel qo'llanmasi", "ARM qo'llanmasi" va boshqalar).
- Barcha ishlab chiqish ishlari tugagandan so'ng, siz kodni ochiq kod sifatida chiqarishni xohlaysizmi yoki mualliflik huquqi bilan qaror qabul qiling.
- Boshlamang dasturlashni o'rganishni boshlash uchun operatsion tizim loyihasi. Agar siz C, C ++, Paskal yoki boshqa mos tillarni bilmasangiz, shu jumladan ko'rsatgichlar bilan ishlov berish, past darajali bitli manipulyatsiya, bitlarni almashtirish, ichki yig'ish tillari va hk., Siz operatsion tizimga tayyor emassiz. rivojlanish.
- SOni "kengaytirish" uchun mutlaqo yangi bo'lim yaratish yaxshi variant bo'lishi mumkin.
- Agar siz oson yo'lni xohlasangiz, Fedora Revisor, Custom Nimble X, Puppy Remaster, PCLinuxOS Mk LiveCD yoki SUSE Studio va SUSE KIWI kabi Linux tarqatmalarini ko'rib chiqing. Biroq, siz yaratgan operatsion tizim xizmatni birinchi bo'lib boshlagan kompaniyaga tegishli (garchi siz uni erkin tarqatish, o'zgartirish va GPL ostida xohlaganingizcha ishlatish huquqiga egasiz).
Ogohlantirish
- Siz ikki hafta ichida to'liq operatsion tizimga ega bo'lmaysiz. Yuklash mumkin bo'lgan SO -dan boshlang, so'ng sovuqroq narsalarga o'ting.
- Qattiq diskka operatsion tizimni beparvolik bilan yozish uni butunlay buzishi mumkin. Ehtiyot bo'ling.
- Agar siz tasodifiy kirish -chiqish portlariga tasodifiy bayt yozish kabi tavsiya qilinmagan biror narsa qilsangiz, operatsion tizimingiz ishdan chiqadi va (nazariy jihatdan) sizning qurilmangizni yoqib yuborishi mumkin.
- Operatsion tizimni qurish oson deb o'ylamang. Ko'p murakkab o'zaro bog'liqliklar mavjud. Masalan, bir nechta protsessorlarga ishlov bera oladigan operatsion tizim yaratish uchun Xotira menejerida bir vaqtning o'zida bir nechta protsessorlarning bitta resursga kirishiga yo'l qo'ymaslik uchun "qulflash" mexanizmi bo'lishi kerak. Buning uchun ishlatiladigan "qulf" rejalashtiruvchidan har qanday vaqtda faqat bitta protsessor muhim resurslarga kirishini ta'minlashi kerak, qolganlari esa kutishi kerak. Aslida, rejalashtiruvchi xotira menejerining mavjudligiga bog'liq. Bu boshi berk ko'chaga qaramlikka misol. Bunday muammoni hal qilishning standart usuli yo'q; har bir operatsion tizim dasturchisi u bilan ishlashning o'ziga xos usulini bilish uchun etarli darajada malakali bo'lishi kutilmoqda.
Qo'shimcha manbalar
- Ko'rsatmalar: Linux From Scratch
- Yuklovchi: GRUB
- Virtual mashina ilovalari: Bochs, VM Ware, XM Virtual Box.
- Protsessor uchun qo'llanma: Intel qo'llanmasi
- SO ishlab chiqish saytlari: OSDev, OSDever