Компьютерийн үйлдлийн системийг хэрхэн яаж хийх вэ: 13 алхам (зурагтай)

Агуулгын хүснэгт:

Компьютерийн үйлдлийн системийг хэрхэн яаж хийх вэ: 13 алхам (зурагтай)
Компьютерийн үйлдлийн системийг хэрхэн яаж хийх вэ: 13 алхам (зурагтай)

Видео: Компьютерийн үйлдлийн системийг хэрхэн яаж хийх вэ: 13 алхам (зурагтай)

Видео: Компьютерийн үйлдлийн системийг хэрхэн яаж хийх вэ: 13 алхам (зурагтай)
Видео: Marlin Firmware - VScode PlatformIO Install - Build Basics 2024, Дөрөвдүгээр сар
Anonim

Энэхүү wikiHow нь C эсвэл C ++ дээр код бичихээ мэдэхгүй байгаа бол үйлдлийн системийг хэрхэн төлөвлөх, хөгжүүлэх талаар танд заадаг. Үйлдлийн систем нь компьютерийн техник хангамжийг удирдаж, програмуудыг ажиллуулахад шаардлагатай нөөцийг өгдөг. Үйлдлийн системийг эхнээс нь бичихийн тулд компьютерийн шинжлэх ухааны өндөр мэдлэг, C эсвэл C ++ гэх мэт програмчлалын хэл, угсралт, кодын менежментийн дадал зуршлыг шаарддаг.

Алхам

2 -ийн 1 -р хэсэг: Үндсэн ойлголтуудыг сурах

Компьютерийн үйлдлийн систем хийх 1 -р алхам
Компьютерийн үйлдлийн систем хийх 1 -р алхам

Алхам 1. Компьютерийн шинжлэх ухааны анхан шатны сургалтанд хамрагдах

Үйлдлийн системийг бий болгохын тулд вэбийг хөгжүүлэхээс ялгаатай нь алгоритм, өгөгдлийн бүтэц, компьютерийн техник хангамж, нөөцийн менежментийн талаар хүчтэй ойлголт шаарддаг. Хүмүүс энэ чиглэлээр диплом авдаг тул онлайн хичээлийг уншсаны дараа бүхэл бүтэн үйлдлийн систем бичнэ гэж бүү бодоорой! Харвардын Компьютерийн Шинжлэх Ухааны хичээлийг EDX -ээр дамжуулан онлайнаар үнэ төлбөргүй авах боломжтой.

Компьютерийн үйлдлийн систем хийх 2 -р алхам
Компьютерийн үйлдлийн систем хийх 2 -р алхам

Алхам 2. Python шиг өндөр түвшний програмчлалын хэл сур

Компьютерийн шинжлэх ухааны үндсэн ойлголттой болсны дараа дараагийн алхам бол C ба/эсвэл C ++ хэлийг эзэмших явдал юм. Компьютерийн шинжлэх ухааны талаар суралцахтай адил хэлийг эзэмших нь заавал биш бөгөөд хэрэв та хатуу програм бичиж чадахгүй бол үйлдлийн системийг кодлох боломжгүй болно.

Хэрэв та C хэл дээр цоо шинэ хүн бол EDX -ээр үнэгүй явагддаг Dartmouth's C Programming: Getting Started курс -ийг үзээрэй. Та энэ курсээ дуусгасны дараа цувралын дараагийн сургалтанд хамрагдах боломжтой: C програмчлал: хэлний үндэс. Дараа нь модульчлагдсан програмчлал, санах ойн менежмент, заагч ба санах ойн менежмент гэх мэт дараагийн курс руу шилжээрэй

Компьютерийн үйлдлийн систем хийх 4 -р алхам
Компьютерийн үйлдлийн систем хийх 4 -р алхам

Алхам 3. Ассемблер хэл сурах

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

  • Энэхүү нээлттэй эх сурвалжтай номыг бүхэлд нь уншвал үйлдлийн системийг бий болгох талаар хангалттай ойлголттой болно.
  • Ассемблейн хэлний урлаг бол офлайн болон офлайн байдлаар угсрах талаар маш их санал болгодог ном юм.
  • Та өөрийн үйлдлийн систем ямар процессор дээр ажиллах ёстой талаар маш их судалгаа хийх хэрэгтэй. Процессорын архитектурын гарын авлагыг Google хайлт ("Intel гарын авлага", "ARM гарын авлага" гэх мэт) ашиглан хялбархан олох боломжтой.
Компьютерийн үйлдлийн систем хийх 5 -р алхам
Компьютерийн үйлдлийн систем хийх 5 -р алхам

Алхам 4. Үйлдлийн системийн хичээлийг бөглөнө үү

OS -ийн заавар нь үндсэн үйлдлийн системийг бий болгох үйл явцыг танд зааж өгөх болно. Энэ нь таныг энэ үйл явцад дасгаж, дутагдаж байгаа хэсгүүд байгаа эсэхийг олж мэдэхэд тусална. Ганц хоёр зааварчилгааг бөглөсний дараа та өөрийн үйлдлийн системийг бүтээхэд сайн болно.

  • Нүцгэн яс бол анхны 32 битийн цөмийг бичихэд туслах заавар юм. Хичээлийг дуусгасны дараа дараагийн алхам бол Meaty Skeleton ашиглан өөрийн үйлдлийн системийг бүтээх явдал юм.
  • Scratch -аас 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-ийг ашиглах эсвэл 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 дээр /r /osdev, Програм хангамжийн инженерийн стек бирж байдаг. Та үндсэн үйлдлийн системийг хөгжүүлэх талаар ойлголттой болсон бол одоо байгаа бичлэгүүдийг уншиж, хөгжүүлэлтийн явцад ямар зүйл гарч ирж байгааг олж мэдээрэй.

Видео - Энэ үйлчилгээг ашигласнаар зарим мэдээллийг YouTube -тэй хуваалцаж болно

Зөвлөмж

  • Хэрэв та системээ амьдрах чадвартай байхыг хүсч байвал аюулгүй байдлын онцлог шинж чанаруудыг хэрэгжүүлэхийг анхаараарай.
  • Бүх хөгжүүлэлт хийгдсэний дараа кодыг нээлттэй эх сурвалж эсвэл өмчлөлийн хэлбэрээр гаргахыг хүсч байгаагаа шийдээрэй.
  • Үйлдлийн системийг олон процессортой ажиллах чадвартай болгохын тулд таны санах ойн менежер олон процессорыг нэг нөөцөд нэгэн зэрэг хандахаас сэргийлэх "түгжих" механизмтай байх ёстой. Үүнд ашигладаг "түгжээ" нь зөвхөн нэг процессор чухал нөөцөд ямар ч үед хандаж байгаа эсэхийг шалгахын тулд хуваарьлагчтай байх шаардлагатай бөгөөд бусад бүх зүйлийг хүлээх шаардлагатай болно. Гэсэн хэдий ч хуваарь гаргах нь санах ойн менежер байгаа эсэхээс хамаарна. Энэ бол гацаанд орсон хараат байдлын тохиолдол юм. Иймэрхүү асуудлыг шийдэх стандарт арга байхгүй; Программистын хувьд та түүнтэй харьцах өөрийн арга замыг олж мэдэх чадвартай байх ёстой.
  • Үйлдлийн систем нь хэрэглэгчдэд ээлтэй байж болно. Хэрэглэгчдэд ээлтэй онцлог шинж чанаруудыг нэмж оруулах нь зүйтэй бөгөөд эдгээр нь таны дизайны салшгүй хэсэг болно.
  • Битгий нэгдээрэй OSDev.org форумд орж, тодорхой асуулт асууж эхлээрэй. Энэ нь зүгээр л үр дүнд хүргэнэ "Гарын авлагыг уншина уу" хариултууд. Та Википедиа, ашиглахыг хүсч буй янз бүрийн хэрэгслийн гарын авлагыг уншиж үзээрэй.
  • Битгий эхлээрэй програмчлал сурч эхлэх үйлдлийн системийн төсөл. Хэрэв та C, C ++, Паскаль эсвэл заагчийг удирдах, доод түвшний битийн зохицуулалт, битийн шилжилт, шугаман угсрах хэл гэх мэт бусад тохиромжтой хэлийг сайн мэдэхгүй байгаа бол та үйлдлийн системийг хөгжүүлэхэд бэлэн биш байна..
  • Хэрэв та санамсаргүй оролт/оролтод санамсаргүй байт бичих гэх мэт санамсаргүй зүйл хийвэл та OS-ээ сүйтгэж, техник хангамжаа хуурч болно.

Зөвлөмж болгож буй: