Anda di halaman 1dari 60

SISTEM OPERASI

Struktur Sistem Operasi

STMIK Palangkaraya
2022
2021 CREATED BY Amaya Andri Damaini, S.Kom., M.T
Layanan Sistem Operasi

STMIK Palangkaraya
2022
2
Pengguna dan Antarmuka
Sistem Operasi
Command Interpreter, GUI, Touch Screen

STMIK Palangkaraya
2022
Command Line Interpreter
▸ Fungsi utama: untuk
mengambil dan
menjalankan
perintah yang
ditentukan oleh
pengguna.

STMIK Palangkaraya
2022
4
▸ Manipulasi file, process creation & management, I/O Handling,
Secondary-storage management, main memory management, file
system access, protection, networking.

▸ Contoh CLI: MS-DOS, C shell, Bourne-Again shell, Korn shell, dll.


STMIK Palangkaraya
2022
Graphical User
Interface
▸ Windows: Lunar, Place your screenshot here

Aero
▸ Linux: KDE,
GNOME, Xfce
▸ MacOS: Aqua
STMIK Palangkaraya
2022
6
Touch
Screen Interface
▸ MIUI (Xiaomi)
▸ One UI (Samsung)
▸ ColorOS (Oppo)

STMIK Palangkaraya
2022
7
“ Pilih antarmuka yang mana?

STMIK Palangkaraya
2022
8
System Calls

STMIK Palangkaraya
2022
System call menyediakan penghubung
(interface) ke layanan yang disediakan
oleh SO
Penggilan tersedia dalam bentuk fungsi
yang ditulis dalam bahasa C dan C++.
Untuk tugas tingkat rendah tertentu yang
membutuhkan akses langsung ke perangkat
keras, bisa berbentuk instruksi dalam
bahasa assembly.

STMIK Palangkaraya
2022
10
Contoh skema: Menulis program
sederhana untuk membaca data dari
satu file, kemudian disalin ke file yang
lain.
Input:
File Input
File Output
Perintah:
cp in.txt out.txt

STMIK Palangkaraya
2022
11
Pendekatan 2 (sistem interaktif):
meminta nama file kepada user

▸ Menulis pesan prompt di layar


▸ Membaca dari keyboard karakter yang
mendefinisikan kedua file
▸ Pada sistem berbasis mouse dan ikon,
menu nama file biasanya ditampilkan di
layar.

STMIK Palangkaraya
2022
12
▸ Pengguna memilih nama file sumber
menggunakan mouse
▸ Sebuah jendela akan muncul untuk
menentukan nama file tujuan.
▸ Setelah dua nama file diperoleh,
program harus membuka file input dan
membuat dan membuka file output

STMIK Palangkaraya
2022
13
Setiap kondisi error yang mungkin terjadi pada
setiap system call harus ditangani.

Contoh:
▸ Tidak ditemukan file input dengan nama program harus mengeluarkan pesan
kesalahan dan program akan berhenti
yang dimaksud atau akses file secara tidak normal
terproteksi
▸ Sudah ada file output dengan nama yang program akan dibatalkan atau file
yang ada dihapus dan dibuatkan yang
sama baru

Menanyakan pengguna apakah akan


mengganti file yang ada atau membatalkan
STMIK Palangkaraya program
2022
14
STMIK Palangkaraya
2022
15
API (Application Programming Interface)

▸ Pengembang aplikasi merancang program sesuai dengan API (Application


Programming Interface)
▸ API menentukan serangkaian fungsi yang tersedia untuk pemrogram
aplikasi (termasuk parameter dan nilai pengembalian)
▸ Contoh API: Windows API, POSIX API, Java API
▸ Fungsi yang membentuk API biasanya memanggil panggilan sistem yang
sebenarnya atas nama pemrogram aplikasi

STMIK Palangkaraya
2022
16
STMIK Palangkaraya
2022
17
Mengapa seorang programmer aplikasi lebih memilih pemrograman menurut
API daripada menjalankan System calls secara langsung?

1 2
Program yang dibuat dapat System Calls yang sebenarnya
dikompilasi dan dijalankan pada seringkali lebih detail dan sulit untuk
sistem apapun yang mendukung dikerjakan daripada API yang tersedia
API yang sama. untuk pemrogram aplikasi.

STMIK Palangkaraya
2022
18
RTE (Run-time Environment)
▸ RTE diperlukan untuk menjalankan aplikasi yang ditulis dalam Bahasa
pemrograman tertentu
▸ RTE menyediakan antarmuka panggilan sistem yang berfungsi sebagai
tautan ke panggilan sistem yang disediakan oleh sistem operasi.

STMIK Palangkaraya
2022
19
STMIK Palangkaraya
2022
20
Metode umum yang untuk melewatkan parameter ke
sistem operasi

1 2 3
Pass Parameter dalam register Menyimpan parameter ke Push (menyimpan) parameter
sebuah tabel di dalam memori, ke tumpukan(stack) oleh
dan alamat tabel dikenali program, dan diambil kembali
sebagai sebuah parameter dari antrian (pop off) oleh
dalam register. sistem operasi.

STMIK Palangkaraya
2022
21
Jenis System Calls

▸ Kontrol proses
▸ Manajemen file
▸ Manajemen perangkat
▸ Pemeliharaan informasi
▸ Komunikasi
▸ Perlindungan

STMIK Palangkaraya
2022
22
Kontrol proses
▸ create process, terminate process
▸ load, execute
▸ get process attributes, set process attributes
▸ wait event, signal event
▸ allocate and free memory

STMIK Palangkaraya
2022
23
STMIK Palangkaraya
2022
24
STMIK Palangkaraya
2022
25
Manajemen file
▸ create file, delete file
▸ open, close
▸ read, write, reposition
▸ get file attributes, set file attributes

STMIK Palangkaraya
2022
26
Manajemen perangkat
▸ request device, release device
▸ read, write, reposition
▸ get device attributes, set device attributes
▸ logically attach or detach devices

STMIK Palangkaraya
2022
27
Pemeliharaan informasi
▸ get time or date, set time or date
▸ get system data, set system data
▸ get process, file, or device attributes
▸ set process, file, or device attributes

STMIK Palangkaraya
2022
28
Komunikasi
Ada dua model Komunikasi antar proses yang umum digunakan:
▸ Model Message-Passing: Informasi saling dilakukan melalui fasilitas yang
telah ditentukan oleh sistem operasi
▸ Model Shared-Memory: Proses-proses menggunakan map memori untuk
menagakses daerah-daerah di memori dengan proses-proses yang lain

STMIK Palangkaraya
2022
29
Komunikasi
▸ create, delete communication connection
▸ send, receive messages
▸ transfer status information
▸ attach or detach remote devices

STMIK Palangkaraya
2022
30
Perlindungan
▸ get file permissions
▸ set file permissions

STMIK Palangkaraya
2022
31
Layanan-layanan Sistem

STMIK Palangkaraya
2022
▸ Manajemen file
▸ Informasi Status
▸ Modifikasi file
▸ Dukungan Bahasa pemrograman
▸ Pemuatan dan eksekusi program
▸ Komunikasi
▸ Layanan Background

STMIK Palangkaraya
2022
33
Linker dan Loader

STMIK Palangkaraya
2022
STMIK Palangkaraya
2022
35
Desain dan Implementasi
Sistem Operasi

STMIK Palangkaraya
2022
Tujuan Desain
▸ Desain sistem akan dipengaruhi oleh pilihan perangkat keras dan jenis
sistem: desktop/laptop tradisional, seluler, terdistribusi, atau real-time
▸ Tentukan kebutuhan/persyaratan sistem berdasarkan tujuan pengguna dan
tujuan sistem
▸ Sistem harus mudah dirancang, diimplementasikan, dan dipelihara; dan
harus fleksibel, andal, bebas kesalahan, dan efisien.

STMIK Palangkaraya
2022
37
Mekanisme dan Kebijakan
▸ Mekanisme menentukan bagaimana melakukan sesuatu
▸ Kebijakan menentukan apa yang akan dilakukan
▸ Perubahan kebijakan akan membutuhkan pendefinisian ulang parameter
tertentu dari sistem

STMIK Palangkaraya
2022
38
Implementasi
▸ Sistem operasi awal ditulis dalam bahasa assembly. Sekarang, sebagian
besar ditulis dalam bahasa tingkat tinggi seperti C atau C++, dengan
sejumlah kecil sistem yang ditulis dalam bahasa assembly.
▸ Keuntungan menggunakan bahasa tingkat yang lebih tinggi adalah kode
dapat ditulis lebih cepat, lebih ringkas, dan lebih mudah dipahami dan di-
debug.
▸ Kelemahan dari penerapan sistem operasi menggunakan Bahasa tingkat
tinggi yaitu kecepatan yang berkurang dan kebutuhan penyimpanan yang
meningkat.
STMIK Palangkaraya
2022
39
Struktur Sistem Operasi

STMIK Palangkaraya
2022
Struktur
Monolitik
▸ Tidak ada struktur sama sekali
▸ Semua fungsionalitas kernel
ditempatkan ke dalam satu file biner
statis yang berjalan dalam satu ruang
alamat.

STMIK Palangkaraya
2022
41
Pendekatan
Berlapis
▸ Sistem operasi dipecah menjadi
beberapa lapisan (level).
▸ Keuntungan: menyederhanakan
debugging dan verifikasi sistem

STMIK Palangkaraya
2022
42
Microkernels
▸ Menyusun sistem operasi dengan menghapus semua komponen yang tidak
penting dari kernel dan mengimplementasikannya sebagai program tingkat
pengguna yang berada di ruang alamat terpisah
▸ mikrokernel menyediakan proses minimal dan manajemen memori, selain
fasilitas komunikasi.
▸ Fungsi utama dari mikrokernel adalah untuk menyediakan komunikasi antara
program klien dan berbagai layanan yang juga berjalan di ruang pengguna.

STMIK Palangkaraya
2022
43
STMIK Palangkaraya
2022
44
Modules
▸ Kernel memiliki seperangkat komponen inti dan dapat terhubung ke layanan
tambahan melalui modul, baik pada saat boot atau selama run time
▸ Menyerupai sistem berlapis di mana setiap bagian kernel telah
mendefinisikan, antarmuka yang dilindungi; tetapi lebih fleksibel daripada
sistem berlapis, karena modul apa pun dapat memanggil modul lain.
▸ Mirip dengan pendekatan mikrokernel tetapi lebih efisien, karena modul
tidak perlu memanggil lewat pesan untuk berkomunikasi.

STMIK Palangkaraya
2022
45
Sistem Hybrid
▸ Menggabungkan struktur yang berbeda untuk menangani masalah kinerja,
keamanan, dan usability.
▸ Linux: monolitik dan modular
▸ Windows: monolitik dan microkernel

Bagaimana dengan Sistem operasi dari Apple dan Android?

STMIK Palangkaraya
2022
46
STMIK Palangkaraya
2022
47
STMIK Palangkaraya
2022
48
STMIK Palangkaraya
2022
49
Membangun dan Mem-boot
Sistem Operasi

STMIK Palangkaraya
2022
Langkah-langkah Membangun
Sistem Operasi
1. Tulis kode sumber sistem operasi (atau dapatkan kode sumber yang ditulis
sebelumnya).
2. Konfigurasikan sistem operasi untuk sistem yang akan dijalankannya.
3. Kompilasi sistem operasi.
4. Instal sistem operasi.
5. Boot komputer dan sistem operasi barunya.

STMIK Palangkaraya
2022
51
(contoh) Membangun Sistem Operasi Linux
1. Unduh kode sumber Linux dari http://www.kernel.org.
2. Konfigurasi kernel menggunakan perintah "make menuconfig".
3. Kompilasi kernel utama menggunakan perintah "make".
4. Kompilasi modul kernel menggunakan perintah "make modules".
5. Gunakan perintah "make modules install" untuk menginstal modul kernel
ke vmlinuz.
6. Instal kernel baru pada sistem dengan memasukkan perintah "make
install".
STMIK Palangkaraya
2022
52
Sistem Boot
Pada kebanyakan sistem, proses boot berlangsung sebagai berikut:
1. Sepotong kecil kode yang dikenal sebagai program bootstrap atau boot
loader menempatkan kernel.
2. Kernel dimuat ke dalam memori dan dimulai.
3. Kernel menginisialisasi perangkat keras.
4. Sistem file root sudah terpasang.

STMIK Palangkaraya
2022
53
Debugging Sistem
Operasi

STMIK Palangkaraya
2022
Analisis Kegagalan
▸ Jika suatu proses gagal, sebagian besar sistem operasi menulis informasi
kesalahan ke file log untuk memperingatkan administrator sistem atau
pengguna bahwa masalah telah terjadi.
▸ Kegagalan di kernel disebut crash. Saat terjadi crash, informasi kesalahan
disimpan ke file log, dan status memori disimpan ke crash dump.

STMIK Palangkaraya
2022
55
Pemantauan dan Penyetelan Kinerja

▸ Penyetelan(tuning) kinerja berupaya meningkatkan kinerja dengan


menghilangkan hambatan pemrosesan.
▸ Cara menghitung dan menampilkan ukuran perilaku sistem:
▹ Counter
▹ Tracing

STMIK Palangkaraya
2022
56
Counter
▸ Sistem operasi melacak aktivitas sistem melalui serangkaian penghitung,
seperti jumlah panggilan sistem yang dilakukan atau jumlah operasi yang
dilakukan ke perangkat jaringan atau disk

STMIK Palangkaraya
2022
57
Counter
Contoh Tools Linux yang menggunakan counter:
▸ Per-proses: ps
▹ ps—melaporkan informasi untuk satu proses atau pemilihan proses
▹ top—melaporkan statistik real-time untuk proses saat ini
▸ System-wide:
▹ vmstat—melaporkan statistik penggunaan memori
▹ netstat—melaporkan statistik untuk antarmuka jaringan
▹ iostat—melaporkan penggunaan I/O untuk disk

STMIK Palangkaraya
2022
58
Penelusuran (tracing)
Contoh alat Linux yang melacak event:
▸ Per-Proses
▹ strace—melacak panggilan sistem yang dipanggil oleh suatu proses
▹ gdb—debugger tingkat sumber
▸ Seluruh Sistem
▹ perf—kumpulan alat kinerja Linux
▹ tcpdump—mengumpulkan paket jaringan

STMIK Palangkaraya
2022
59
THANKS!
Any questions?
Referensi:
▸ Operating System Concept: Chapter 2
▸ Teori dan Praktek Sistem Operasi: Struktur
Sistem Operasi

STMIK Palangkaraya
2022
60

Anda mungkin juga menyukai