Pag-unawa sa Mga Operating System sa Computer Science
Sa ubod ng paggana ng bawat computer ay ang Operating System (OS). Ito ang master software na kumokontrol sa hardware, namamahala sa mga mapagkukunan ng system, at pinapadali ang pakikipag-ugnayan sa pagitan ng user, mga application, at ang makina. Suriin natin ang mga pangunahing kaalaman ng mga operating system, pag-unawa sa kanilang mga bahagi, uri, at paggana sa loob ng larangan ng computer science.
Ano ang isang Operating System?
Ang Operating System (OS) ay isang malakas at mahalagang software na namamahala sa computer hardware at software resources, na nagbibigay ng mga karaniwang serbisyo para sa mga computer program. Ang bawat computer ay dapat magkaroon ng hindi bababa sa isang OS upang magpatakbo ng iba pang mga programa. Ang OS ay gumaganap bilang isang tagapamagitan sa pagitan ng mga user at ng computer hardware. Kabilang sa mga halimbawa ng mga sikat na operating system ang Microsoft Windows, macOS, Linux, at Android.
Mga Pangunahing Pag-andar ng isang Operating System
Ang operating system ay may malawak na hanay ng mga function, mahalaga sa paggana ng isang computer system. Ang ilan sa mga pangunahing pag-andar nito ay kinabibilangan ng:
- Pamamahala ng Proseso: Pinangangasiwaan nito ang paglikha, pag-iskedyul, at pagwawakas ng mga proseso. Ang isang proseso ay isang programa na ipinapatupad, at pinamamahalaan ng OS ang mga prosesong ito nang mahusay upang matiyak ang maayos na pagganap ng system.
- Pamamahala ng Memorya: Pinamamahalaan ng OS ang memorya ng system, na kinabibilangan ng alokasyon at deallocation ng memorya sa mga proseso kapag kailangan nila ito at pinapalaya ito kapag hindi.
- Pamamahala ng File System: Ito ay tumatalakay sa imbakan, pagkuha, pagbibigay ng pangalan, pagbabahagi, at proteksyon ng mga file. Ang OS ay nagpapanatili ng mga hierarchy ng file at sinusubaybayan ang impormasyon, tulad ng lokasyon, laki, at uri ng file.
- Pamamahala ng Device: Pinamamahalaan ng OS ang komunikasyon ng device sa pamamagitan ng kani-kanilang mga driver. Nagsasagawa ito ng mga gawain tulad ng pagpapadala ng mga print command sa printer, pagbabasa ng data mula sa isang keyboard, at pamamahala ng mga operasyon ng CPU.
- Security at Access Control: Tinitiyak ng OS na hindi ina-access ng mga hindi awtorisadong user ang system at nagpoprotekta laban sa mga malisyosong banta. Pinamamahalaan nito ang mga user account, password, at iba't ibang mga pahintulot upang pangalagaan ang data.
Mga Uri ng Operating System
Maaaring ikategorya ang mga Operating System batay sa kanilang mga pag-andar at mga serbisyong ibinibigay nila. Ang pinakakaraniwang uri ay kinabibilangan ng:
- Batch Operating System: Ang mga OS na ito ay hindi direktang nakikipag-ugnayan sa computer. Dito, ang mga trabaho ay kinokolekta, pinagsama-sama, at pinoproseso nang paisa-isa nang walang interbensyon ng user.
- Mga Operating System na Multi-tasking/Time-sharing: Nagbibigay-daan ang mga ito sa maramihang mga program na tumakbo nang sabay-sabay sa pamamagitan ng pagbabahagi ng mga hiwa ng oras ng CPU. Kasama sa mga halimbawa ang Linux at Windows.
- Real-Time Operating System (RTOS): Ginagamit ang mga RTOS sa mga kapaligiran kung saan mahigpit ang mga hadlang sa oras, tulad ng sa mga naka-embed na system. Pinoproseso nila ang data habang pumapasok ito, nang walang pagkaantala sa buffer.
- Network Operating System: Gumagana ang mga ito sa mga server at nagbibigay ng kakayahang maghatid ng maraming kliyente, pamahalaan ang data, user, grupo, seguridad, at mga application sa isang network.
- Mga Distributed Operating System: Pinamamahalaan nila ang isang pangkat ng mga independiyenteng computer at pinalalabas ang mga ito bilang isang computer sa user. Ang pagproseso ay ipinamamahagi sa maraming pisikal na makina.
Pamamahala ng kaisipan
Ang pamamahala ng memorya ay kinabibilangan ng paglalaan at muling paglalaan ng mga partikular na bloke ng memorya sa mga indibidwal na proseso ng OS ng system. Ang isang mahalagang aspeto ng pamamahala ng memorya ay ang pagkakaiba sa pagitan ng pisikal at virtual na memorya.
- Pisikal na Memorya: Ito ang aktwal na RAM (Random Access Memory) na available sa system.
- Virtual Memory: Ito ay isang puwang sa hard disk na ginagamit upang gayahin ang karagdagang RAM. Ito ay nagbibigay-daan para sa pagpapatupad ng malalaking aplikasyon o maramihang mga aplikasyon nang sabay-sabay, na lampas sa kakayahan ng pisikal na memorya lamang.
Ang pinakasimpleng pamamaraan sa pamamahala ng memorya ay magkadikit na alokasyon , kung saan ang bawat proseso ay nakapaloob sa isang solong magkadikit na seksyon ng memorya. Gayunpaman, ang pamamaraang ito ay may mga pag-urong, tulad ng pagkapira-piraso. Upang mapagtagumpayan ito, ang mga modernong OS ay gumagamit ng paging at segmentation .
Pag-iiskedyul ng Proseso
Ang pag-iskedyul ng proseso ay ang paraan kung saan ang OS ay nagpapasya kung aling proseso sa handa na pila ang isasagawa ng processor. Ang pangunahing layunin ay upang i-maximize ang paggamit ng CPU. Kasama sa mga algorithm sa pag-iiskedyul ang:
- First-Come, First-Served (FCFS): Ang mga proseso ay inaasikaso ayon sa pagkakasunud-sunod ng pagdating.
- Pinakamaikling Susunod na Trabaho (SJN): Pinipili ng algorithm na ito ang proseso na may susunod na pinakamaikling oras ng pagpapatupad. Maaari itong humantong sa mas mahusay na pagganap, ngunit nangangailangan ng paunang kaalaman sa oras ng pagpapatupad.
- Round Robin (RR): Ang bawat proseso ay itinalaga ng isang nakapirming puwang ng oras at isinasagawa sa bawat pagliko. Tinitiyak ng pamamaraang ito ang pagiging patas sa mga proseso.
- Pag-iiskedyul ng Priyoridad: Ang bawat proseso ay itinalaga ng isang priyoridad, at ang pagpapatupad ay batay sa pagkakasunud-sunod ng priyoridad. Ang mga proseso ng mas mataas na priyoridad ay isinasagawa bago ang mga mas mababang priyoridad.
Mga File System
Ang file system ay isang organisadong paraan na ginagamit ng OS upang mag-imbak, mag-ayos, at pamahalaan ang mga file sa isang disk. Nagbibigay ito ng paraan para magbasa at magsulat ang mga application sa imbakan ng disk. Kasama sa mga karaniwang uri ng file system ang FAT32, NTFS para sa Windows, at Ext3, Ext4 para sa Linux. Ang file system ay namamahala ng metadata tungkol sa mga file, kabilang ang pangalan ng file, laki, paggawa, at mga petsa ng pagbabago.
Konklusyon
Ang isang Operating System ay mahalaga sa paggana ng mga computer at computing device. Nagbibigay ito ng mahalagang interface sa pagitan ng user at ng hardware, mahusay na namamahala sa mga mapagkukunan, at tinitiyak ang pangkalahatang seguridad at kahusayan ng system. Ang pag-unawa sa functionality, mga uri, at mga bahagi ng mga operating system ay mahalaga sa larangan ng computer science.