Компьютердин операциялык тутумун кантип жасоо керек: 13 кадам (сүрөттөр менен)

Мазмуну:

Компьютердин операциялык тутумун кантип жасоо керек: 13 кадам (сүрөттөр менен)
Компьютердин операциялык тутумун кантип жасоо керек: 13 кадам (сүрөттөр менен)

Video: Компьютердин операциялык тутумун кантип жасоо керек: 13 кадам (сүрөттөр менен)

Video: Компьютердин операциялык тутумун кантип жасоо керек: 13 кадам (сүрөттөр менен)
Video: Кантип Windows 10 орнотуу керек. Башынан аягына чейин. 2024, Апрель
Anonim

Бул wikiHow сизге операциялык системаны кантип пландаштырууну жана өнүктүрүүнү үйрөтөт, эгерде сиз C же C ++ тилинде коддоону билбесеңиз. Операциондук системалар компьютердин аппараттык жабдууларын башкарат жана тиркемелерди иштетүү үчүн керектүү ресурстарды камсыз кылат. Операциялык системаны нөлдөн баштап жазуу үчүн информатиканын күчтүү буйругу, C же C ++ сыяктуу программалоо тили, кураштыруу жана кодду башкаруу практикасы талап кылынат.

Кадамдар

2 ичинен 1 -бөлүк: Негиздерди үйрөнүү

Компьютердик операциялык системаны жасаңыз 1 -кадам
Компьютердик операциялык системаны жасаңыз 1 -кадам

Кадам 1. Информатика боюнча негизги курстарды алыңыз

Веб үчүн иштөөдөн айырмаланып, операциялык системаны түзүү алгоритмдерди, маалымат структураларын, компьютердик жабдууларды жана ресурстарды башкарууну терең түшүнүүнү талап кылат. Адамдар бул нерселер боюнча даражаларга ээ болушат, андыктан онлайн окуу куралын окуп бүтүндөй операциялык системаны жазам деп күтпөңүз! Гарварддын Информатика Интро курсу онлайнда EDX аркылуу эч кандай акысыз жеткиликтүү.

ЭЭМ үчүн операциялык системаны жасаңыз 2 -кадам
ЭЭМ үчүн операциялык системаны жасаңыз 2 -кадам

Кадам 2. Python сыяктуу жогорку деңгээлдеги программалоо тилин үйрөнүңүз

Сизде информатика боюнча негиздүү түшүнүк болгондон кийин, кийинки кадам C жана/же C ++ тилин өздөштүрүү болуп саналат. Информатика жөнүндө үйрөнүү сыяктуу эле, тилди үйрөнүү дагы милдеттүү эмес-эгер сиз катуу тиркемелерди жаза албасаңыз, анда операциялык системаны коддой албайсыз.

Эгерде сиз C үчүн жаңы болсоңуз, анда Dartmouth's C Programming: Getting Started курсун караңыз, ал EDX аркылуу бекер. Бул курсту аяктагандан кийин, сиз катардагы кийинки курсту ала аласыз: C программалоо: Тил фонддору. Андан кийин, модулдук программалоо жана эс тутумду башкаруу жана көрсөткүчтөр жана эс тутумун башкаруу сыяктуу кийинки курстарга өтүңүз

Компьютердик операциялык системаны жасаңыз 4 -кадам
Компьютердик операциялык системаны жасаңыз 4 -кадам

3 -кадам. Ассамблея тилин үйрөнүңүз

Ассамблея тилдери-бул ар кандай процессорлор менен байланышууга арналган төмөнкү деңгээлдеги тилдер. Процессордун ар кандай түрлөрү үчүн жыйноо башкача болгондуктан (мис., Intel, AMD, VIA жана башка процессорлор үчүн x86 чогултуу тили), сиз коддогон процессордун түрүн билишиңиз керек болот.

  • Бул ачык булак китеп, эгерде толугу менен окулса, сизге операциялык тутумду куруу үчүн жетишерлик бекем түшүнүк бере алат.
  • Ассамблея тили-бул оффлайнда да, жыйналышта да сунушталган китеп.
  • Сиз ошондой эле сиздин операциялык тутумуңуз иштеши керек болгон процессор (лор) боюнча көп изилдөө жүргүзүшүңүз керек. Процессордун архитектурасы үчүн колдонмолорду Google издөө аркылуу оңой табууга болот ("Intel Manuals", "ARM manuals" ж.б.).
Компьютердик операциялык системаны жасаңыз 5 -кадам
Компьютердик операциялык системаны жасаңыз 5 -кадам

Кадам 4. Иштетүү тутумунун окуу куралын толтуруңуз

OS үйрөткүчтөрү сизге негизги операциялык тутумду түзүү процессинде жол көрсөтөт. Бул сизди процессте көндүрөт жана сизде жок болгон бөлүктөр бар экендигин аныктоого жардам берет. Бир же эки үйрөткүчтү бүтүргөндөн кийин, өзүңүздүн операциялык тутумуңузду түзүүдө жакшы болосуз.

  • Жалаң Сөөктөр-бул биринчи 32-бит ядроңузду жазууга жардам берген окуу куралы. Үйрөткүч аяктагандан кийин, кийинки кадам Meaty Skeleton колдонуп, өзүңүздүн операциялык тутумуңузду түзүүгө болот.
  • Скретчтен Linux - бул сиздин жеке Linux операциялык системаңызды түзүүгө багытталган онлайн китеп.
  • 0дон 1ге чейинки операциялык системалар - бул башынан аягына чейин ар кандай операциялык тутумдарды түзүү жөнүндө бекер китеп.
Компьютердик операциялык системаны жасаңыз 3 -кадам
Компьютердик операциялык системаны жасаңыз 3 -кадам

Кадам 5. Иштөө тутумуңуздун максаттарын аныктаңыз

Операциялык системаңыздын эмне кылышын каалайсыз? Ал кандай болушу керек? Чын эле бүтүндөй операциялык тутумду жазышыңыз керекпи же сиз жөн гана столго белгилүү бир көрүнүштү түзүүнү каалап жатасызбы? Булардын баары кодду баштоодон мурун эске алынышы керек.

  • Башка программисттер тобу менен өнүгүүнү ойлонуп көрүңүз. Долбоордун үстүндө иштеп чыгуучулардын тобунун болушу иштеп чыгуу убактысын кыйла кыскартат.
  • Долбоордун максаттарын, пландарын жана суроолорун ачык репозиторийиңизге кошуңуз, башкалар сизге жардам бериши оңой.

2 ичинен 2 -бөлүк: Операциондук системаңызды куруу

16 -кадам
16 -кадам

Кадам 1. Өнүгүү чөйрөсүн тандаңыз

Бул жаңы операциялык системаңызды коддоо үчүн колдонула турган платформа. Бул жеке каалоо маселеси, бирок көпчүлүк адамдар Windowsту же UNIXтин даамын колдонушат. Эгерде сиз Windows колдонуп жатсаңыз, Cygwin же MinGW сыяктуу UNIX чөйрөсүн орнотуу жакшы. Сиз көбүнчө сиз колдонуп жаткан чөйрө төмөнкүлөрдү камтыганын текшергиңиз келет:

  • GCC (Gnu компилятору). Эгерде сиз Windows колдонуп жатсаңыз, аны Cygwin же MinGW орното аласыз.
  • Binutils - объект файлдарын башкаруу үчүн колдонулган куралдардын жыйындысы. Дагы, эгер сиз Windows колдонуп жатсаңыз, аны Cygwinге орното аласыз.
  • Жакшы текст редактору. Vim жана emacs көбүнчө UNIX чөйрөсүндө колдонулат. Windows колдонуучулары Блокнотту колдоно алышат, же Notepad ++ программасын көп өтмөктөрдү жаңыртуу үчүн текшере алышат.
  • Perl жана/же Python. Бир же экөө тең сапты манипуляциялоо үчүн сунушталат.
ЭЭМ үчүн операциялык системаны жасаңыз 13 -кадам
ЭЭМ үчүн операциялык системаны жасаңыз 13 -кадам

Кадам 2. Версияңызды башкаруу системасын орнотуңуз

Иштетүү тутумун жазуу, мүмкүн, сиз жүздөгөн (же миңдеген) коддорду түзөсүз дегенди билдирет. Сиз оңдоолордун үстүндө иштеп жатканыңызда, бул түшүнүксүз болуп калышы мүмкүн. Текшерүүнүн кээ бир варианттары CVS, Mercurial жана Subversion.

ЭЭМ үчүн операциялык системаны жасаңыз 6 -кадам
ЭЭМ үчүн операциялык системаны жасаңыз 6 -кадам

Кадам 3. Жүктөгүч жөнүндө чечим кабыл алыңыз

Эгерде сиз өзүңүздүн жеке оюңузду түзгүңүз келбесе, анда Grand Unified Bootloader (GRUB) сыяктуу учурдагы колдоно аласыз. Эгерде сиз жүктөгүчтү коддоого батына албасаңыз, OSDev.org сайтынан Rolling Your Own Bootloader программасын караңыз.

Компьютердик операциялык системаны жасаңыз 9 -кадам
Компьютердик операциялык системаны жасаңыз 9 -кадам

Кадам 4. Ядро дизайнын тандаңыз

Ядро - бул сиздин операциялык тутумуңуздун өзөгү, ал колдонуучу менен компьютердин жабдыктарынын ортосундагы интерфейсти камсыз кылат. Монолиттик ядро жана микро ядро бар. Монолиттик ядро ядродогу бардык кызматтарды ишке ашырат, ал эми микро ядродо кызматтарды ишке ашыруучу колдонуучу демондор менен айкалышкан кичинекей ядро бар. Жалпысынан алганда, монолиттик ядро тезирээк, бирок микро ядродо ката изоляциясы жана ишенимдүүлүгү жакшырат.

ЭЭМ үчүн операциялык системаны жасаңыз 12 -кадам
ЭЭМ үчүн операциялык системаны жасаңыз 12 -кадам

Кадам 5. Кичине баштаңыз

Эстутумду башкаруу жана көп тапшырма сыяктуу нерселерге өтүүдөн мурун текстти жана үзгүлтүктөрдү көрсөтүү сыяктуу кичинекей нерселерден баштаңыз. Ошондой эле чоң секирик жасоонун ордуна, жөнөкөй 16-биттик Операциондук системаны түзүп көрүңүз.

Сизде эки жуманын ичинде толук система болбойт. Жүктөлүүчү OS менен баштаңыз, андан кийин сонун нерселерге өтүңүз

Компьютердик операциялык системаны жасаңыз 14 -кадам
Компьютердик операциялык системаны жасаңыз 14 -кадам

Кадам 6. Жаңы операциялык системаңызды виртуалдык машина менен текшериңиз

Өзгөртүүлөрдү киргизген сайын же файлдарды иштеп чыгуучу компьютериңизден тест машинаңызга өткөрүп беришиңиз керек болгондо, компьютериңизди кайра жүктөөнүн ордуна, виртуалдык машина колдонмосун колдонуңуз. VMWare - бул Windows жана Linux менен иштеген жалпы вариант, ошондой эле Bochs. Потенциалдуу туюктарды жана башка мүчүлүштүктөрдү текшерип, аларды зарылдыгына жараша оңдоңуз.

ЭЭМ үчүн операциялык системаны жасаңыз 15 -кадам
ЭЭМ үчүн операциялык системаны жасаңыз 15 -кадам

7 -кадам. "Чыгаруу талапкерин" бошотуңуз

Сиз муну текшерилген кодуңузду коомдук репозиторийиңизге жүктөө менен кыла аласыз. Бул адамдарга сиздин операциялык тутумуңузду сынап көрүүгө жана алар туш болгон маселелер боюнча отчет берүүгө мүмкүнчүлүк берет.

28 -кадам
28 -кадам

Кадам 8. Башка операциялык системаны иштеп чыгуучулар менен тармак

Ар кандай форумдарда, анын ичинде Reddit жана Software Engineering Stack Exchangeде /r /osdevде чогулган операциялык тутумду иштеп чыгуучулардын бүтүндөй коомчулугу бар. Негизги операциялык системаны иштеп чыгууну түшүндүңүз, иштеп чыгуу процессинде кандай нерселер пайда болорун билүү үчүн учурдагы билдирүүлөрдү окуңуз.

Видео - Бул кызматты колдонуу менен, кээ бир маалыматтар YouTube менен бөлүшүлүшү мүмкүн

Кеңештер

  • Эгер сиз системаңыздын жарактуу болушун кааласаңыз, коопсуздук функцияларын биринчи орунга коюуну унутпаңыз.
  • Бардык иштеп бүткөндөн кийин, кодду ачык булак же менчик катары чыгаргыңыз келеби, чечиңиз.
  • Операциялык системаны бир нече процессорду иштете алгыдай кылуу үчүн, Эстутум менеджериңизде бир эле учурда бир эле процессорго бир нече процессордун кирүүсүнө жол бербөө үчүн "кулпулоо" механизмдери болушу керек. Бул үчүн колдонулган "кулпулар" бир гана процессор каалаган убакта маанилүү ресурска жетээрин жана калгандары күтүү үчүн пландоочунун болушун талап кылат. Бирок пландоочу Эстутум менеджеринин болушуна көз каранды. Бул туюкка кептелген көз карандылыктын учуру. Бул сыяктуу көйгөйлөрдү чечүүнүн стандарттуу жолу жок; программист катары, сиз аны менен иштөө ыкмасын табуу үчүн жетиштүү жөндөмдүү болушуңуз күтүлүүдө.
  • Иштетүү тутуму да колдонуучуга ыңгайлуу болушу мүмкүн. Колдонуучуга ыңгайлуу өзгөчөлүктөрдү кошууну унутпаңыз, бул сиздин дизайныңыздын ажырагыс бөлүгү.
  • Кошулба OSDev.org форумдары жана ачык суроолорду бере баштаңыз. Бул жөн гана алып келет "Колдонмону окуу" жооптор. Сиз Википедияны жана колдонууну каалаган ар кандай инструменттердин окуу куралдарын окуп көрүшүңүз керек.
  • Баштаба программалоону үйрөнүү үчүн операциялык системанын долбоору. Эгерде сиз C, C ++, Паскаль же башка башка ылайыктуу тилди, анын ичинде көрсөткүч манипуляциясын, төмөнкү деңгээлдеги бит манипуляциясын, битти алмаштырууну, катардагы ассемблерди билбесеңиз, сиз операциялык системаны иштеп чыгууга даяр эмессиз..
  • Эгерде сиз кокусунан кирүү/кирүү портторуна туш келди байт жазуу сыяктуу туура эмес бир нерсе кылсаңыз, сиз ОЖ бузулуп, (теория боюнча) жабдууларыңызды кууруй аласыз.

Сунушталууда: