Anda di halaman 1dari 44

OPERATING

SYSTEM SUPPORT
MUHAMMAD ADY FAHMI SUSILO (190411100127)
MUHAMMAD MAULANA MAGHROBI (190411100138)
AKHMAD RIZALDI IRVANA (190411100128)
REVANELLY RISKY PUTRA WIDIANSYAH (190411100141)
Operating System Overview
 Operating system adalah program yang mengelola sumber daya komputer,
menyediakan layanan untuk programmer, dan menjadwalkan pelaksanaan
program lain. Beberapa pemahaman tentang sistem operasi sangat pentinguntuk
menghargai mekanisme yang CPU mengontrol sistem komputer. Yang secara
khususmenjelaskan tentang efek gangguan dan pengelolaan.
 Tujuan dan fungsi sistem operasiSebuah OS adalah sebuah program yang
mengontrol pelaksanaan program aplikasi dan bertindak sebagaiantarmuka antara
aplikasi dan perangkat keras komputer. Hal ini dapat dianggapmemiliki dua
tujuan:
• Kenyamanan: sebuah OS membuat komputer lebih nyaman untuk digunakan.
• Efisiensi: OS memungkinkan sumber dayasistem komputer untuk digunakan
dalamcara yang efisien.
Operating System Overview
A. Sistem operasi sebagai pengguna/Computer Interface
 perangkat kerasperangkat lunak yang digunakan dalam penyediaan aplikasi
kepada pengguna dapat dilihatatau hirarkis, seperti yang digambarkan pada
gambar. Pengguna aplikasi tersebut,pengguna akhir, umumnya tidak peduli
dengan arsitektur komputer. Sehingga pengguna akhir melihat sistem komputer
dalam hal aplikasi. Aplikasi itudapat diungkapkan dalam bahasa pemrograman
dan dikembangkan oleh aplikasiProgrammer. Untuk mengembangkan program
aplikasi sebagai seperangkat petunjuk prosesor
Operating System Overview
A. Sistem operasi sebagai pengguna/Computer Interface
Operating System Overview
A. Sistem operasi sebagai pengguna/Computer Interface

OS biasanya menyediakan layanan di area berikut:


• Pembuatan program: OS menyediakan berbagai fasilitas dan layanan, seperti
sebagai editor dan debuggers
• Eksekusi program: sejumlah langkah untuk untuk mengeksekusi Program.
• Akses ke perangkat I/O: setiap perangkat I/O yang memerlukan serangkaian
instruksi khusus atau sinyal kontrol untuk operasi.
• Dikontrol akses ke file: dalam kasus file, kontrol harus mencakup pemahaman
tidak hanya sifat perangkat I/O (disk drive, tape drive) tetapi juga format file pada
media penyimpanan.
Operating System Overview
A. Sistem operasi sebagai pengguna/Computer Interface

• Akses sistem: dalam kasus sistem bersama atau publik, OS mengontrol akses
sistem secara keseluruhan dan sumber daya sistem tertentu. Fungsi akses harus
memberikan perlindungan sumber daya dan data dari pengguna yang tidak harus
menyelesaikan konflik untuk sanggahan sumber daya.
• Kesalahan Deteksi dan respons: berbagai kesalahan dapat terjadi saat komputer
sistem sedang berjalan. Ini termasuk kesalahan perangkat keras internal dan
eksternal Dalam setiap kesalahan, OS harus membuat respon yang membersihkan
kondisi kesalahan dengan dampak minimal berjalan Aplikasi. Respons dapat
berkisar dari mengakhiri program yang menyebabkan kesalahan, untuk mencoba
kembali operasi, untuk sekadar melaporkan kesalahan ke aplikasi.
Operating System Overview
A. Sistem operasi sebagai pengguna/Computer Interface

• Akuntansi: sebuah OS yang baik mengumpulkan statistik penggunaan untuk


berbagai sumber daya dan memantau parameter kinerja seperti waktu respons.
Operating System Overview
A. Sistem operasi sebagai pengguna/Computer Interface

Pada gambar sebelumnya juga menemukan 3 interface kunci dalam system computer:
• Arsitektur set instruksi (ISA): ISA mendefinisikan repertoar mesin petunjuk
bahasa yang dapat diikuti komputer. Antarmuka ini adalah batas antara perangkat
keras dan perangkat lunak. Perhatikan bahwa kedua program aplikasi dan utilitas
dapat langsung mengakses ISA. OS memiliki akses ke informasi tambahan
instruksi bahasa mesin yang berhubungan dengan pengelolaan sumber daya
sistem (sistem ISA).
Operating System Overview
A. Sistem operasi sebagai pengguna/Computer Interface

• Aplikasi antarmuka biner (ABI): ABI mendefinisikan standar untuk biner


portabilitas di seluruh program. ABI mendefinisikan antarmuka panggilan sistem
ke sistem operasi dan sumber daya perangkat keras dan layanan yang tersedia
dalam sistem melalui pengguna ISA.
• Antarmuka pemrograman aplikasi (API): API memberikan akses program ke
sumber daya perangkat keras dan layanan yang tersedia dalam sistem melalui
pengguna. ISA dilengkapi dengan panggilan Perpustakaan bahasa tingkat tinggi
(HLL).
Operating System Overview
B. Sistem Operasi sebagai manajer sumberdaya komputer

SIistem operasi sebagai manajer sumber daya komputer adalah seperangkat sumber
daya untuk gerakan, Penyimpanan, dan pengolahan data dan kontrol
Operating System Overview
B. Sistem Operasi sebagai manajer sumberdaya komputer

Gambar menunjukkan sumber daya utama yang


dikelola oleh OS. Sebagian OS dalam memori
utama. Ini termasuk kernel, atau inti, yang
berisi fungsi yang paling sering digunakan di
OS dan, pada waktu tertentu, Bagian lain dari
OS yang sedang digunakan. Sisa memori utama
berisi program pengguna dan ata. Alokasi
sumber daya ini (memori utama) dikontrol
bersama oleh OS dan perangkat keras
manajemen memori di prosesor, seperti yang
akan kita lihat. OS memutuskan Ketika
perangkat I/O dapat digunakan oleh program
dalam pelaksanaan, dan kontrol akses
Operating System Overview
Jenis-jenis OS

Karakteristik kunci tertentu berfungsi untuk membedakan berbagai jenis sistem


operasi. Karakteristik jatuh sepanjang dua dimensi independen. Dimensi pertama
menentukan apakah sistem batch atau interaktif. Dalam sistem interaktif,
User/programmer berinteraksi langsung dengan komputer, biasanya melalui
keyboard/ Terminal Display, untuk meminta eksekusi pekerjaan atau melakukan
transaksi. Dimensi independen menentukan apakah sistem mempekerjakan
multipemrograman atau tidak.
Scheduling

Kunci untuk multitasking adalah penjadwalan. Bahkan, empat jenis penjadwalan


biasanya terlibat (tabel).
Scheduling
A. Penjadwalan Jangka Panjang

Scheduler jangka panjang menentukan program mana yang diterima untuk sistem
untuk Pengolahan. Dengan demikian, mengontrol tingkat multitasking (jumlah proses
dalam memori). Setelah diterima, pekerjaan atau program pengguna menjadi suatu
proses dan ditambahkan ke antrian untuk scheduler jangka pendek.
Scheduling
B. Penjadwalan Jangka Menengah

Penjadwalan jangka menengah adalah bagian dari fungsi swapping. Biasanya,


keputusan swapping-in didasarkan pada kebutuhan untuk mengelola tingkat
multitasking. Pada sistem yang tidak menggunakan memori virtual, manajemen
memori juga merupakan masalah. Dengan demikian, keputusan swapping-in akan
mempertimbangkan memori persyaratan dari proses swapped-out.
Scheduling
C. Penjadwalan Jangka Pendek

Penjadwalan jangka panjang mengeksekusi relatif jarang dan membuat keputusan


coarsegrained apakah atau tidak untuk mengambil proses baru, dan yang satu untuk
mengambil. Scheduler jangka pendek, juga dikenal sebagai dispatcher, mengeksekusi
sering dan membuat keputusan yang halus yang pekerjaan untuk mengeksekusi
berikutnya. untuk memahami pengoperasian scheduler jangka pendek, perlu
mempertimbangkan konsep keadaan proses. Selama masa hidup suatu proses,
statusnya akan berubah beberapa kali. Statusnya pada setiap titik waktu disebut
sebagai suatu negara. Istilah negara digunakan karena menjelaskan bahwa informasi
tertentu ada yang mendefinisikan status pada saat itu.
Scheduling
C. Penjadwalan Jangka Pendek

Minimal, ada lima bagian yang ditetapkan untuk proses:


• Baru: sebuah program diakui oleh scheduler tingkat tinggi tetapi belum siap untuk
mengeksekusi. OS akan menginisialisasi prosesnya, memindahkannya ke kondisi
siap.
• Siap: proses ini siap untuk mengeksekusi dan sedang menunggu akses ke
prosesor.
• Running: proses dieksekusi oleh prosesor.
• Menunggu: proses ditangguhkan dari eksekusi menunggu beberapa sistem sumber
daya, seperti I/O.
• Dihentikan: proses telah dihentikan dan akan dihancurkan oleh OS.
Scheduling
C. Penjadwalan Jangka Pendek
Scheduling
C. Penjadwalan Jangka Pendek

Untuk setiap proses dalam sistem, OS harus menjaga informasi yang menunjukkan
keadaan proses dan informasi lain yang diperlukan untuk pelaksanaan proses. Untuk
tujuan ini, setiap proses diwakili di OS oleh blok kontrol proses yang biasanya berisi
• Pengidentifikasi: setiap proses saat ini memiliki pengidentifikasi unik.
• Negara: keadaan saat ini proses (baru, siap, dan seterusnya).
• Prioritas: tingkat prioritas relatif.
• Program Counter: alamat dari instruksi berikutnya dalam program yang akan
Dijalankan.
• Pointer memori: lokasi awal dan akhir dari proses dalam memori.
• • Data konteks: ini adalah data yang ada dalam register di prosesor
Memory Management

Dalam uniprogramming system, memori utama dibagi menjadi dua bagian: satu
bagian untuk OS (resident monitor) dan satu bagian untuk program yang sedang
dijalankan. Dalam system multi program, bagian "pengguna" dari memori dibagi lagi
untuk mengakomodasi beberapa proses. Tugas subdivisi dilakukan secara dinamis
oleh OS dan dikenal sebagai manajemen memori.
Manajemen memori yang efektif sangat penting dalam sistem multiprogramming.
Jika hanya beberapa proses yang ada dalam memori, maka untuk sebagian besar
waktu semua proses akan menunggu I / O dan prosesor akan menganggur. Dengan
demikian, memori perlu dialokasikan secara efisien untuk mengemas sebanyak
mungkin proses ke dalam memori sebanyak mungkin.
Memory Management
Swapping
Memory Management
Swapping

pada Gambar disamping, Kami memiliki antrian permintaan proses jangka panjang,
biasanya disimpan di disk. Ini dibawa, satu per satu, saat ruang tersedia. Saat proses
selesai, mereka dipindahkan dari memori utama. Sekarang situasi akan muncul
bahwa tidak ada proses dalam memori dalam status siap (mis., Semua menunggu
pada operasi I / O). Daripada tetap diam, prosesor menukar salah satu dari proses ini
kembali ke disk ke antrian menengah. Ini adalah antrian dari proses yang ada yang
telah sementara dikeluarkan dari memori. OS kemudian membawa proses lain dari
antrian menengah, atau itu menghormati permintaan proses baru dari antrian jangka
panjang.
Memory Management
Partitioning
Memory Management
Partitioning

Partisi Skema paling sederhana untuk mempartisi memori yang tersedia adalah
dengan menggunakan partisi ukuran tetap, seperti yang ditunjukkan pada Gambar
sebelumnya. Perhatikan bahwa, meskipun partisi berukuran tetap, mereka tidak harus
berukuran sama. Ketika suatu proses dibawa ke dalam memori, itu ditempatkan di
partisi terkecil yang tersedia yang akan menahannya
Memory Management
Paging
Memory Management
Paging

Kedua partisi fixed-size dan variable-size yang tidak sama tidak efisien dalam
penggunaan memori. Anggaplah, bagaimanapun, bahwa memori dipartisi menjadi
potongan ukuran tetap yang sama yang relatif kecil, dan bahwa setiap proses juga
dibagi menjadi potongan ukuran tetap kecil dengan ukuran tertentu. Kemudian
potongan program, yang dikenal sebagai halaman, dapat ditugaskan ke potongan
memori yang tersedia, yang dikenal sebagai bingkai, atau bingkai halaman. Paling-
paling, maka, ruang terbuang dalam memori untuk proses itu adalah sebagian kecil
dari halaman terakhir.
Memory Management
Virtual Memory

Dengan penggunaan paging, sistem multiprogram yang benar-benar efektif muncul.


Lebih jauh, taktik sederhana untuk memecah proses menjadi beberapa halaman
mengarah pada pengembangan konsep penting lainnya: memori virtual. Untuk
memahami memori virtual, kita harus menambahkan penyempurnaan pada skema
paging yang baru saja dibahas. Penyempurnaan itu adalah paging permintaan, yang
berarti bahwa setiap halaman dari suatu proses dibawa hanyaketika dibutuhkan,
yaitu, sesuai permintaan. Pertimbangkan proses yang besar, yang terdiri dari program
yang panjang ditambah sejumlah array data. Selama periode waktu singkat, eksekusi
dapat terbatas pada bagian kecil dari program (mis., Subrutin), dan mungkin hanya
satu atau dua array data yang digunakan.
Memory Management
Translation Lookaside Buffer (TLB)

Secara prinsip, setiap acuan memori virtual dapat menyebabkan dua akses memori
fisik: satu untuk mengambil entri tabel halaman yang sesuai, dan satu untuk
mengambil data yang diinginkan. Dengan demikian, skema memori virtual langsung
akan memiliki efek menggandakan waktu akses memori. Untuk mengatasi masalah
ini, sebagian besar skema memori virtual menggunakan cache khusus untuk entri
tabel halaman, biasanya disebut Translation Lookaside Memory (TLB). Cache ini
berfungsi dengan cara yang sama seperti cache memori dan berisi entri tabel halaman
yang baru-baru ini digunakan. Gambar 8.18 adalah diagram alur yang menunjukkan
penggunaan TLB. Dengan prinsip lokalitas, sebagian besar referensi kehabisan
memori virtual akan ke lokasi di halaman yang baru digunakan. Oleh karena itu,
sebagian besar referensi akan melibatkan entri tabel halaman dalam cache. Studi pada
VAX TLB telah menunjukkan bahwa skema ini dapat secara signifikan meningkatkan
kinerja [CLAR85, SATY81].
Memory Management
Segmentation

Segmentasi Ada cara lain di mana memori beralamat dapat dibagi lagi, dikenal
sebagai segmentasi. Sementara paging tidak terlihat oleh pemrogram dan melayani
tujuan menyediakan pemrogram dengan ruang alamat yang lebih besar, segmentasi
biasanya terlihat oleh pemrogram dan disediakan sebagai kenyamanan untuk
mengatur program dan data dan sebagai sarana untuk menghubungkan atribut
privilege dan perlindungan dengan instruksi dan data. Pengaturan memungkinkan
programmer untuk melihat memori sebagai terdiri dari beberapa ruang alamat atau
segmen. Segmen adalah variabel, memang dinamis, ukuran. Biasanya, programmer
atau OS akan menetapkan program dan data ke segmen yang berbeda
Memory Management
Segmentation

Segmentasi memiliki sejumlah keunggulan bagi programmer daripada ruang alamat


yang tidak tersegmentasi:
• 1.Ini menyederhanakan penanganan struktur data yang tumbuh. Jika programmer
tidak tahu sebelumnya seberapa besar struktur data tertentu, tidak perlu menebak.
Struktur data dapat ditugaskan segmennya sendiri, dan OS akan memperluas atau
mengecilkan segmen sesuai kebutuhan.
• 2.Ini memungkinkan program untuk diubah dan dikompilasi ulang secara mandiri
tanpa mengharuskan seluruh rangkaian program dihubungkan kembali dan dimuat
ulang. Sekali lagi, ini dicapai menggunakan beberapasegmen.
Memory Management
Segmentation

• Ini cocok untuk berbagi antara proses. Seorang programmer dapat menempatkan
program utilitas atau tabel data yang berguna di segmen yang dapat diatasi oleh
proses lain.
• Ini cocok untuk perlindungan. Karena sebuah segmen dapat dibangun untuk berisi
sekumpulan program atau data yang terdefinisi dengan baik, programmer atau
administrator sistem dapat menetapkan hak akses dengan cara yang mudah.
Pentium Memory Management

Sejak diperkenalkannya arsitektur 32-bit, mikroprosesor telah mengembangkan


skema manajemen memori canggih yang dibangun berdasarkan pelajaran yang
dipetik dengan sistem skala menengah dan besar. Dalam banyak kasus, versi
mikroprosesor lebih unggul daripada pendahulunya sistem yang lebih besar. Karena
skema dikembangkan oleh vendor perangkat keras mikroprosesor dan dapat
digunakan dengan berbagai sistem operasi, mereka cenderung untuk tujuan yang
cukup umum. Contoh representatif adalah skema yang digunakan pada Pentium II.
Perangkat keras manajemen memori Pentium II pada dasarnya sama dengan yang
digunakan pada prosesor Intel 80386 dan 80486, dengan beberapa penyempurnaan.
Pentium Memory Management
Address Space

Pentium II mencakup perangkat keras untuk segmentasi dan paging. Kedua


mekanisme dapat dinonaktifkan, memungkinkan pengguna untuk memilih dari empat
tampilan memori yang berbeda:
• Memori tidak terpotong yang tidak teregmentasi: Dalam hal ini, alamat virtual
sama dengan alamat fisik. Ini berguna, misalnya, dalam aplikasi pengontrol
berkinerja tinggi dengan kompleksitas rendah.
• Memori halaman tidak teregmentasi: Di sini memori dipandang sebagai ruang
alamat linear paged. Perlindungan dan pengelolaan memori dilakukan melalui
paging. Ini disukai oleh beberapa sistem operasi (mis., Berkeley UNIX).
Pentium Memory Management
A. Address Space

• Memori tak terpecah tersegmentasi: Di sini memori dipandang sebagai kumpulan


ruang alamat logis.
• Memori paged tersegmentasi: Segmentasi digunakan untuk mendefinisikan partisi
memori logis yang tunduk pada kontrol akses, dan paging digunakan untuk
mengelola alokasi memori di dalam partisi. Sistem operasi seperti UNIX System
V mendukung pandangan ini.
Pentium Memory Management
B. Segmentation

Ketika segmentasi digunakan, setiap alamat virtual (disebut alamat logis dalam
dokumentasi Pentium II) terdiri dari referensi segmen 16-bit dan pengaturan 32-bit.
Dua bit dari referensi segmen berurusan dengan mekanisme perlindungan,
menyisakan 14 bit untuk menentukan segmen tertentu. Dengan demikian, dengan
memori tidak teregmentasi, memori virtual pengguna adalah 232 = 4 Gbytes. Dengan
memori tersegmentasi, total ruang memori virtual yang terlihat oleh pengguna adalah
246 = 64 terabytes (Tbytes). Ruang alamat fisik menggunakan alamat 32-bit untuk
maksimum 4 Gbytes.
Pentium Memory Management
B. Segmentation

Mekanisme penerjemahan alamat untuk segmentasi melibatkan pemetaan alamat


virtual ke dalam apa yang disebut sebagai alamat linear (Gambar 8.20b). Alamat
virtual terdiri dari offset 32-bit dan pemilih segmen 16-bit (Gambar 8.20a). Selektor
segmen terdiri dari bidang-bidang berikut:
• Table Indicator (TI): Menunjukkan apakah tabel segmen global atau tabel segmen
lokal harus digunakan untuk terjemahan.
• Nomor Segmen: Jumlah segmen. Ini berfungsi sebagai indeks ke dalam tabel
segmen.
• Tingkat Privilege Diminta (RPL): Tingkat privilege yang diminta untuk akses ini.
Pentium Memory Management
C. Paging

Segmentasi adalah fitur opsional dan dapat dinonaktifkan. Ketika segmentasi sedang
digunakan, alamat yang digunakan dalam program adalah alamat virtual dan
dikonversi menjadi alamat linier, seperti yang baru saja dijelaskan. Ketika segmentasi
tidak digunakan, alamat linear digunakan dalam program. Dalam kedua kasus
tersebut, langkah berikut adalah mengubah alamat linier itu menjadi alamat 32-bit
nyata.
ARM Memory Management

ARM menyediakan arsitektur sistem memori virtual serbaguna yang dapat


disesuaikan dengan kebutuhan perancang sistem tertanam.
ARM Memory Management
Memory System Organization

Perangkat keras penerjemahan memori virtual menggunakan satu atau dua tingkat
tabel untuk terjemahan dari alamat virtual ke fisik, seperti yang dijelaskan kemudian.
The translation lookaside buffer (TLB) adalah cache dari entri tabel halaman terbaru.
Jika entri tersedia di TLB, maka TLB langsung mengirim alamat fisik ke memori
utama untuk operasi baca atau tulis. Seperti dijelaskan dalam Bab 4, data
dipertukarkan antara prosesor dan memori utama melalui cache. Jika organisasi cache
logis digunakan, maka ARM memasok alamat itu langsung ke cache serta
memasoknya ke TLB ketika cache terjadi. Jika organisasi cache fisik digunakan,
maka TLB harus menyediakan alamat fisik ke cache.
ARM Memory Management
Virtual Memory Address Translation

ARM mendukung akses memori berdasarkan pada bagian atau halaman:


• Supersections (opsional): Terdiri dari 16-MB blok memori utama
• Bagian: Terdiri dari 1-MB blok memori utama
• Halaman besar: Terdiri dari 64-kB blok memori utama
• Halaman kecil: Terdiri dari blok 4-kB memori utama
ARM Memory Management
Virtual Memory Address Translation

Bagian dan superseksi didukung untuk memungkinkan pemetaan wilayah memori


yang besar dengan hanya menggunakan satu entri di TLB. Mekanisme kontrol akses
tambahan diperluas dalam halaman-halaman kecil menjadi subkunci 1kB, dan dalam
halaman besar hingga subkunci 16kB. Tabel terjemahan yang disimpan dalam
memori utama memiliki dua tingkat:
• Tabel tingkat pertama: Menahan terjemahan bagian dan superseksi, dan penunjuk
ke tabel tingkat kedua
• Tabel tingkat kedua: Menahan terjemahan halaman besar dan kecil
ARM Memory Management
Memory Management Format

Untuk mendapatkan pemahaman yang lebih baik tentang skema manajemen memori
ARM, kami mempertimbangkan format utama. Untuk tabel L1, setiap entri adalah
deskriptor tentang bagaimana kisaran alamat virtual 1-MB yang terkait dipetakan.
Setiap entri memiliki salah satu dari empat format alternatif:
• Bit [1: 0] 00: Alamat virtual yang terkait tidak dipetakan, dan upaya untuk
mengaksesnya menghasilkan kesalahan terjemahan.
• Bit [1: 0] 01: Entri memberikan alamat fisik tabel halaman L2, yang menentukan
bagaimana kisaran alamat virtual terkait dipetakan.
• Bit [1: 0] 01 dan bit 19 0: Entri adalah deskriptor bagian untuk alamat virtual terkait.
• Bit [1: 0] 01 dan bit 19 1: Entri adalah deskriptor superseksi untuk alamat virtual
terkait.
ARM Memory Management
Access Control

Kontrol akses AP bit di setiap entri tabel mengontrol akses ke wilayah memori
dengan proses yang diberikan. Wilayah memori dapat ditetapkan sebagai tidak ada
akses, baca saja, atau baca-tulis. Lebih jauh, wilayah tersebut dapat ditetapkan
sebagai akses istimewa saja, disediakan untuk digunakan oleh OS dan bukan oleh
aplikasi.
ARM Memory Management
Access Control

Setiap entri tabel halaman dan entri TLB berisi bidang yang menentukan di mana
domain entri. Bidang 2-bit di Domain Access Control Register mengontrol akses ke
setiap domain. Setiap bidang memungkinkan akses ke seluruh domain untuk
diaktifkan dan dinonaktifkan dengan sangat cepat, sehingga seluruh area memori
dapat ditukar keluar dan keluar dari memori virtual dengan sangat efisien. Dua jenis
akses domain didukung:
• Klien: Pengguna domain (menjalankan program dan mengakses data) yang harus
memperhatikan izin akses masing-masing bagian dan / atau halaman yang
membentuk domain itu
• Manajer: Mengontrol perilaku domain. (bagian dan halaman saat ini di domain,
dan akses domain), dan memotong izin akses untuk entri tabel di domain itu

Anda mungkin juga menyukai