Lisa Limiarti
BINUSIAN 2017
Session 15, Session 16, Session 17, Session 18, Session 19, Session 20
Categories: Uncategorized

File Management

*Session 15 & Session 16

A)   File Management System & File System API

  • File Management System dianggap bagian dari sistem operasi.
  • Input ke aplikasi melalui file.
  • Output disimpan dalam file untuk penyimpanan jangka panjang.

B)   Tujuan dari File Management System

  • Memenuhi kebutuhan manajemen data dan persyaratan user.
  • Menjamin bahwa data dalam file valid.
  • Mengoptimalkan kinerja.
  • Menyediakan dukungan I/O untuk berbagai jenis perangkat penyimpanan.
  • Meminimalkan atau menghilangkan potensi data yang hilang atau hancur.
  • Menyediakan satu set standar dari rutinitas interface I/O.
  • Menyediakan dukungan I/O untuk beberapa user.

C)   Kumpulan Minimal Persyaratan

  • Setiap user harus dapat membuat, menghapus, membaca, dan mengubah file.
  • Setiap user dapat diakses kontrol ke file user lain.
  • Setiap user dapat mengontrol jenis akses apa yang diperbolehkan untuk file user.
  • Setiap user harus dapat merestrukturisasi file user dalam bentuk yang tepat untuk masalah ini.
  • Setiap user harus dapat memindahkan data diantara file.
  • Setiap user harus dapat membuat back up dan memulihkan file user dalam kasus kerusakan.
  • Setiap user harus dapat mengakses file user dengan menggunakan nama simbolik.

D)   Lapisan-Lapisan File Management

FM1

E)   Dasar File System

  • Fisik I/O.
  • Penawaran dengan bertukar blok data.
  • Fokus dengan penempatan blok.
  • Fokus dengan blok penyangga dalam memori utama.

F)   Penyimpanan Jangka Panjang

– Persyaratan untuk penyimpanan jangka panjang :

  • Dapat menyimpan jumlah informasi yang sangat besar.
  • Informasi harus menyelamatkan penghentian proses yang menggunakannya.
  • Beberapa proses harus dapat mengakses informasi secara bersamaan.

 G)   Penamaan File

FM2

 

H)   Struktur File

FM3

 

I)   Jenis-Jenis File

FM4

(a) An executable file.
(b) An archive file.

J)   Atribut File

FM15jpg

FM6

 

K)   Directories

FM7

  • Sistem Direktori Single Level
    – Berisi 4 file.
    – Dimiliki oleh 3 orang yang berbeda, A, B, dan C.
  • Sistem Direktori Dua Level

FM8

  • Sistem Direktori Hierarchical

FM9

 

L)   Pathname

  • Absolute Pathname.
  • Relative Pathname.

M)   Metode Alokasi File

  • Pendekatan alokasi.
  • Satu set blok dialokasikan ke file pada saat penciptaan.
  • Hanya satu entri dalam tabel alokasi file.
  • Memulai blok dan panjang file.
  • Fragmentasi eksternal akan terjadi.

FM10

 

  • Alokasi Chained.
    – Alokasi atas dasar blok individual.
    – Setiap blok berisi pointer ke blok berikutnya dalam rantai.
    – Hanya entri tunggal didalam tabel alokasi file.
    Mulai blok dan panjang file
  • Tidak ada fragmentasi eksternal.
  • Terbaik untuk file sekuensial.
  • Tidak ada akomodasi prinsip lokalitas.

FM 11

 

  • Alokasi Linked List menggunakan Tabel

FM12

  • Alokasi indeks
    – Tabel alokasi file berisi satu tingkat indeks terpisah untuk setiap file.
    – Indeks ini memiliki satu entri untuk setiap porsi yang dialokasikan ke file.
    – Tabel alokasi file berisi nomor blok untuk indeks.

FM13

 

N)   Mengimplementasikan Directories

FM14

 

  • Penanganan Panjang Nama File

FM15

O)   Dasar Supervisor I/O

  • Bertanggung jawab untuk inisiasi dan terminasi file I/O.
  • Struktur kontrol dijaga.
  • Fokus dengan akses penjadwalan untuk mengoptimalkan kinerja.
  • Bagian dari sistem operasi.

P)   Logical I/O

  • Memungkinkan user dan aplikasi merecord akses.
  • Menyediakan keperluan umum merecord kemampuan I/O.
  • Memelihara dasar-dasar data tentang file.

Q)   Metode Akses File

  • Mencerminkan struktur file yang berbeda.
  • Berbagai cara untuk menyimpan dan mengolah data.

FM16

 

R)   Fungsi File Management

  • Mengidentifikasi dan menempatkan file yang dipilih..
  • Menggunakan direktori untuk menggambarkan lokasi semua file ditambah atributnya.
  • Pada sistem share menggambarkan kontrol akses user.
  • Memblokir akses ke file.
  • Mengalokasikan file ke blok yang gratis.
  • Mengelola penyimpanan gratis untuk blok yang tersedia.

S)   Kriteria untuk File Organization

  • Akses cepat
    – Dibutuhkan ketika mengakses record tunggal.
    – Tidak diperlukan untuk batch mode.
  • Kemudahan pembaruan
    File di CD-ROM tidak akan diperbarui.
  • Ekonomi penyimpanan
    – Harus redundansi minimum didalam data.
    – Redundansi dapat digunakan untuk mempercepat akses seperti indeks.
  • Perawatan mudah.
  • Keandalan.

T)   File Organization

  • The Pile
    – Data dikumpulkan sesuai urutan mereka tiba.
    – Tujuannya adalah untuk mengumpulkan massa data dan menyimpannya.
    – Catatan mungkin memiliki bidang yang berbeda.
    – Tidak ada struktur.
    – Akses record adalah dengan pencarian menyeluruh.
  • The Sequential File
    – Format tetap digunakan untuk record.
    – Panjang record sama.
    – Semua field sama (urutan dan panjang).
    – Nama dan panjang field adalah atribut file.
    – Satu field adalah key file.
    * Mengidentifikasi record secara unik.
    * Record disimpan dalam key sequence.
  • Indexed Sequential File
    Indeks menyediakan kemampuan pencarian untuk mencapai sekitaran record yang diinginkan dengan cepat.
    – Berisi key field dan pointer ke file utama.
    – Indeks dicari untuk menemukan key value tertinggi yaitu sebesar atau kurang dari key value yang diinginkan.
    – Mencari terus di file utama di lokasi yang ditunjukkan oleh pointer.
  • The Direct, or Hashed File
    – Langsung mengakses blok di alamat yang dikenal.
    – Key field diperlukan untuk setiap record.

U)   Menjaga Track dari Free Block

FM17
(a) Menyimpan free list pada linked list. (b) Sebuah bitmap.

FM18

 

(a) Sebuah blok pointer yang hampir penuh ke blok free disk di memori dan tiga blok dari pointer pada disk. (b) Hasil membebaskan file tiga blok. (c) Strategi alternatif untuk menangani tiga blok bebas. Entri yang diarsir merupakan pointer ke blok disk.
V)   Konsistensi File System

FM19

File system states. (a) Consistent. (b) Missing block. (c) Duplicate block in free list. (d) Duplicate data block.

W)   Contoh Codingan

  • Open

FM20FM21

  • Creat

fm22

  • Iseek

FM23

X)   Open Mode

  • Menentukan hak akses untuk digunakan dalam kasus file yang baru dibuat.
  • Mode ini hanya berlaku untuk masa mengakses file yang baru dibuat.
  • User:   S_IRWXU, S_IRUSR, S_IWUSR, S_IXUSR
    Group: S_IRWXG,S_IRGRP,S_IWGRP,S_IXGRP
    Other:  S_IRWXO, S_IROTH,S_IWOTH,S_IXOTH
  • Mode harus ditentukan ketika O_CREAT didalam flag.

Y)   lseek – fd, offset

  • fd
    – File descriptor.
    – Harus menjadi file descriptor terbuka.
  • offset
    – Mereposisi offset dari fd file descriptor ke argumen offset sesuai dengan direktifnya.

Z)   Stat

int stat(const char *pathname, struct stat *buf)

  • Memperoleh informasi mengenai file yang ditunjuk oleh pathname.
  • Izin membaca, menulis atau mengeksekusi dari named file tidak diperlukan, tetapi semua direktori yang tercantum didalam pathname yang menuju file harus dicari.

– Struct Stat

FM24

A.1) chmod

#include <sys/types.h>
#include <sys/stat.h>

int chmod(const char *pathname,  mode_t mode)

  • Mengatur bit izin file dari file yang ditentukan oleh pathname (pathname ke mode).
  • Hanya pemilik yang dapat mengubah mode.

– Contoh

fm25

 

A.2)   Operasi Direktori

  1. Create
  2. Delete
  3. Opendir
  4. Closedir
  5. Readdir
  6. Rename
  7. Link
  8. Unlink

A.3)   System Calls untuk Directories

  • Sebagai konsekuensinya, ada rutinitas yang memungkinkan kita untuk melihat file apa saja yang ada didalam direktori.
  • Fungsi yang melakukan hal ini adalah :
    –DIR* opendir(const char* pathname)
    –struct dirent *readdir(DIR *dirp);
    –int closedir(DIR *dirp);
    –void rewinddir(DIR *dirp);

A.4)   Struktur Dirent

  • Struktur dirent memiliki bentuk berikut:struct dirent {
    ino_t d_ino;
    off_t d_off;
    unsigned short d_reclen;
    char d_name[1];
    };
  • Anggota d_name berisi nama file dari readdir().
  • Ketika selesai memproses entri direktori kita dapat menutup DIR* dengan memanggil closedir().

 

I/O Management

*Session 17 & Session 18

A)   Perangkat-Perangkat I/O

Perbedaan-perbedaan utama :

  • Data Rate : Setiap perangkat memiliki data rate yang berbeda.
  • Application : Penggunaan yang perangkat diletakkan memiliki pengaruh pada software dan kebijakan di OS dan mendukung utilitas.
  • Complexity of control : Kompleksitas I/O modul yang mengontrol perangkat.

B)   Data Rate

IO 1

 

C)   Teknik-Teknik I/O

  • Programmed I/O
    Prosesor memberikan perintah I/O, atas nama proses, untuk modul I/O; dimana proses kemudian sibuk menunggu untuk operasi yang harus diselesaikan sebelum dilanjutkan.
  • Interrupt Driven I/O
    Prosesor memberikan perintah I/O atas nama proses.
  • Direct Memory Access
    Sebuah modul DMA mengontrol pertukaran data antara memori utama dan modul I/O.

 

D)   Bagaimana DMA Bekerja

Ketika prosesor ingin membaca atau menulis sebuah blok data, prosesor mengeluarkan perintah ke modul DMA dengan mengirimkan ke modul DMA, berikut informasinya :

  • Jika membaca atau menulis diminta, gunakan garis kontrol  membaca atau menulis antara prosesor dan modul DMA.
  • Alamat perangkat I/O yang terlibat, dikomunikasikan pada jalur data.
  • Lokasi dimulai pada memori untuk membaca dari atau menulis, dikomunikasikan pada jalur data dan disimpan oleh modul DMA di address register.
  • Jumlah kata yang akan dibaca atau ditulis, dikomunikasikan lagi melalui jalur data dan disimpan dalam data count register.

Prosesor kemudian berlanjut ke pekerjaan lain.

 

E)   Masalah Hardware

  • Efficiency – karena I / O operasi sering membentuk hambatan dalam sistem komputasi.
  • Generality – Kesederhanaan dan kebebasan dari error.
    – Menangani semua perangkat dengan cara yang seragam.

 

F)   Masalah O/S

  • Efficiency

– Kebanyakan perangkat I/O sangat lambat dibandingkan dengan memori utama.

– Penggunaan multiprogramming memungkinkan untuk beberapa proses harus menunggu I/O saat mengeksekusi proses lain.

– I/O tidak bisa bersaing dengan kecepatan prosesor.

– Swapping digunakan untuk membawa proses siap tambahan yang merupakan operasi I/O.

  • Generality

– Diinginkan untuk menangani semua perangkat I / O secara seragam

– Menyembunyikan sebagian besar rincian perangkat I / O dalam rutinitas tingkat rendah sehingga proses dan level atas melihat perangkat secara umum seperti read, write, open, close, lock, unlock.

 

G)   Organisasi I/O

io 2

  • Logical I/O

– Modul I/O logis berhubungan dengan perangkat sebagai sumber daya logis dan tidak fokus dengan rincian yang benar-benar mengendalikan perangkat.

– Peduli dengan pengelolaan umum fungsi I/O atas nama proses pengguna, yang memungkinkan mereka untuk berhubungan dengan perangkat dalam syarat perangkat.

  • Device I/O

– Operasi dan data yang diminta (karakter buffer, catatan, dll) yang diubah menjadi urutan yang tepat dari instruksi I/O, perintah channel, dan perintah controller.
– Teknik Buffering dapat digunakan untuk meningkatkan pemanfaatan.

  • Scheduling and Control

– Antrian aktual dan penjadwalan operasi I / O terjadi pada lapisan ini dan pengendalian operasi juga.

 

H)   I/O Buffering

  • Alasan untuk buffering- Proses harus menunggu I / O untuk selesai sebelum melanjutkan.
    – Halaman tertentu harus tetap dalam memori utama selama I/O.
  • Block-oriented

– Informasi disimpan dalam blok berukuran tetap.
– Transfer dibuat untuk blok pada suatu waktu.
– Digunakan untuk disk dan tape.

  • Stream-oriented

– Mentransfer informasi sebagai aliran byte.
– Digunakan untuk terminal, printer, port komunikasi, mouse, dan sebagian besar perangkat lain yang bukan merupakan penyimpanan sekunder.

IO 3


I)   Single Buffer

  • Sistem operasi memberikan buffer dalam memori utama untuk I / O request.
  • Block-oriented

– Transfer masukan dibuat ke buffer.
– Blok pindah ke ruang user bila diperlukan.
– Blok lain dipindahkan ke dalam buffer.

  • Read ahead.

J)   Double Buffer

  • Menggunakan dua buffer sistem.
  • Sebuah proses dapat mentransfer data ke atau dari satu buffer saat sistem operasi mengosongkan atau mengisi buffer lainnya.

K)   Circular Buffer

  • Lebih dari dua buffer digunakan.
  • Setiap buffer individu adalah satu unit dalam circular buffer.
  • Digunakan ketika operasi I / O harus bersaing dengan proses.

Contoh Buffering

IO 4
L)   Mengelola Disk

IO 5

M)   Magnetic Disk

io 6

(a) geometri fisik dari disk dengan dua zona.
(b) A geometri maya mungkin untuk disk ini.

N)   CD-ROM

IO 7

IO 8

Logical data layout pada CD-ROM.

O)   CD-Recordable

io 9

 

Penampang disk CD-R dan laser. Sebuah silver CD-ROM memiliki struktur yang mirip, kecuali tanpa lapisan pewarna dan dengan lapisan aluminium daripada lapisan emas.
P)   DVD

Perbaikan DVD pada CD

  1. Smaller pits
    (0.4 microns versus 0.8 microns for CDs).
  2. A tighter spiral
    (0.74 microns between tracks versus 1.6 microns for CDs).
  3. A red laser
    (at 0.65 microns versus 0.78 microns for CDs).

Q)   Format DVD

  1. Single-sided, single-layer (4.7 GB).
  2. Single-sided, dual-layer (8.5 GB).
  3. Double-sided, single-layer (9.4 GB).
  4. Double-sided, dual-layer (17 GB).

R)   Disk Formatting

io 10

Sebuah sektor disk.

 

io 12

(a) Tidak ada interleaving. (b) Single interleaving.
(c) Double interleaving.

S)   Disk

io 11
T)   Disk Arm Scheduling

Membaca / menulis faktor waktu

  1. Carilah waktu (waktu untuk memindahkan arm ke silinder yang tepat).
  2. Delay rotasi (waktu untuk sektor yang tepat untuk memutar di bawah head).
  3. Waktu transfer data aktual.

U)   Disk Scheduling

  • FIFO
  • Priority
  • Shortest Service Time First
  • Scan
  • C-Scan

V)   Contoh Disk Scheduling

Asumsikan disk dengan 200 track dan  antrian permintaan disk memiliki permintaan acak di dalamnya. Trek yang diminta, dalam urutan yang diterima oleh disk scheduler,
55, 58, 39, 18, 90, 160, 150, 38, 184.

io 13

io 14

io 15

io 16
W)   RAID – Redundant Array of Independent Disk

  • RAID adalah sekumpulan disk drive fisik dilihat oleh OS sebagai single logical drive.
  • Data didistribusikan di seluruh drive fisik array dalam skema yang dikenal sebagai striping.
  • Kapasitas disk berlebihan digunakan untuk menyimpan informasi paritas, yang menjamin pemulihan data dalam kasus kegagalan disk.

io 17  io 18     io 19


X)   Input Software

io 20

  • Central buffer pool.
  • Didedikasikan buffer untuk setiap terminal.
  • Keyboard driver memberikan nomor.- Driver mengkonversi ke karakter.
    – Menggunakan tabel ASCII.
  • Pengecualian, adaptasi diperlukan untuk bahasa lain.
    – Banyak OS menyediakan keymap loadable atau halaman kode

Y)   Input Software – Keyboard

io 21

Karakter yang ditangani khusus dalam mode kanonik.
Z)   Output Software

io 22

ANSI escape sequence

  • diterima oleh terminal driver pada output.
  • ESC adalah karakter ASCII (0x1B).
  • n, m, dan s adalah parameter numerik opsional.

A.1)   Tampilan Hardware

io 23

  • Terminal RS-232 berkomunikasi dengan komputer 1 bit pada satu waktu.
  • Disebut serial line – bit keluar dari seri, 1 bit pada satu waktu.
  • Windows menggunakan por tCOM1 dan COM2, pertama untuk serial line.
  • Komputer dan terminal benar-benar independen.

A.2)   User Interface

io 24

ANSI escape sequence diterima oleh terminal driver pada output. ESC menunjukkan karakter escape ASCII (0x1B), dan n, m, dan s adalah parameter numerik opsional.

A.3)   Sistem X-Window

io 26

Jenis pesan antara klien dan server:

  1. Menggambar perintah dari program untuk workstation.
  2. Balasan oleh workstation untuk program query.
  3. Keyboard, mouse, dan pengumuman event lainnya.
  4. Pesan error.

A.4)   Graphical User Interface

io 27   io 28

io 29

Sebuah jendela sampel yang terletak di (200, 100) pada layar XGA.

A.5)   Bitmaps

io 30

Contoh persegi panjang digambar menggunakan Rectangle. Setiap kotak mewakili satu pixel.

io 31
A.6)   Thin Clients

io 32

Protokol THINC menampilkan perintah.

 

A.7)   SLIM Terminal

io 33

Arsitektur dari sistem terminal SLIM (Stateless low level Interface Machine).
A.8)   SSD – Solid State Disk – NOR

  • NOR Flash

io 34
A.9)   SSD-Solid State Disk – NAND

  • Source select transistor dan bit line select transistor semuanya memiliki gerbang mereka diikat, sehingga mereka secara konseptual menambahkan baris tambahan atas dan di bawah garis kata.
  • Untuk membaca sebuah bit individu dalam grid, bit line select dan source select transistor keduanya diaktifkan. Kemudian, semua baris kata yang tidak anda baca sudah Vread diterapkan kepada mereka, memaksa transistor untuk melakukan terlepas dari apakah mereka memiliki muatan dalam gerbang mengambang mereka.
  • NAND Flash

io 35

 

 

Memory Management

*Session 19 & Session 20

A)   Pengertian Memori dan Manajemen Memori

Memori adalah pusat dari operasi pada sistem komputer modern, berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik-baiknya. Memori adalah array besar dari word atau byte, yang disebut alamat. CPU mengambil instruksi dari memory berdasarkan nilai dari program counter. Sedangkan manajemen memori adalah suatu kegiatan untuk mengelola memori komputer. Proses ini menyediakan cara mengalokasikan memori untuk proses atas permintaan mereka, membebaskan untuk digunakan kembali ketika tidak lagi diperlukan serta menjaga alokasi ruang memori bagi proses.

Hirarki Memori
Hirarki Memori

 Pengelolaan memori utama sangat penting untuk sistem komputer, penting untuk memproses dan fasilitas masukan/keluaran secara efisien, sehingga memori dapat menampung sebanyak mungkin proses dan sebagai upaya agar pemogram atau proses tidak dibatasi kapasitas memori fisik di sistem komputer. Fungsi manajemen memori mempunyai peranan sangat penting dalam sistem komputer. Fungsi menejemen memori tersebut adalah :

1. Meningkatkan kinerja atau Utilitas CPU.
2. meningkatkan kecepatan akses CPU terhadap data dan instruksi Data dan instruksi dapat diakses dengan cepat oleh CPU.
3. meningkatkan efisensi pemakaian memori yang terbatas.
4. Meningkatkan efisiensi transfer atau perpindahan data dari atau ke memori utama dan dari atau ke CPU.
5. Mengelola informasi yang dipakai dan tidak dipakai.
6. Mengalokasikan memori ke proses yang memerlukan.
7. Mendealokasikan memori dari proses telah selesai.
8. Mengelola swapping atau paging antara memori utama dan disk.

B)   Jenis-Jenis Memori

Pada prinsipnya memori dalam sistem komputer dibedakan menjadi dua yaitu memori kerja dan memori dukung atau backing store. Memori Kerja mempunyai tugas utaman untuk menampung pekerjaan pada saat sebelum dan sesudah pekerjaan itu dilaksanakan oleh prosesor dan menampung berbagai hal yang diperlukan prosesor, contohnya system operasi, system bahasa, catatan. Beberapa Contoh memori kerja untuk memori tetap adalah: :

  • ROM (Read Only Memory), adalah memori yang hanya dapat baca saja.
  • PROM (Programmable ROM), adalah memori yang dapat diprogram tetapi tidak dapat dihapus lagi
  • EPROM (Electrically PROM), adalah memori yang dapat diisi melalui listrik, dan dapat dihapus.
  • EEPROM (Erasable EPROM), adalah memori yang dapat diisi dan dihapus dengan listrik, maka ciri utamanya adalah isi tetap ada / tidak mudah dihapus meskipun daya listrik computer terputus.
  • Registe mikroproseso. Memori yang memiliki ukurannya paling kecil tapi memiliki waktu akses paling cepat, umumnya hanya 1 siklus CPU saja.

Sementara itu Contoh memori kerja untuk memori bebas adalah :

  • RAM (Random Access Memory): memori yang dapat diisi dan dapat dibaca. Ciri utamanya adalah mengenal asas pemuktahiran yaitu dapat diisi dengan informasi terbaru dan isi akan hilang jika catu daya padam.
  • Cache memory. Memori berkapasitas kecil tetapi berkecepatan tinggi, yang dipasang diantara prosesor dan memori utama. Instruksi dan data yang sering diakses oleh prosesor ditempatkan dalam chace sehingga dapat lebih cepat diakses oleh prosesor. Jika data atau instruksi yang diperlukantidak tersedia dalam chacce, prosesor akan mencari dalam memori utama. Cach memory disusun berdasarkan kedekatannya dengan prosesor (level-1, level-2, level-3, dan seterusnya). Level cache memori tersebut dibedakan berdasarkan kapasitasnya.

Memori kerja terdiri dari sel memori yang berisi 1 kata sandi, misalnya sistem 8 bit menggunakan 8 bit kata sandi, sistem 1 kbyte menggunakan 1024 byte kata sandi. Sementara itu yang termasuk dalam Memori Dukung / backing store adalah: Floppy, Harddisk, CD, tape magnetik, flash disk dll.

C)   Istilah-Istilah dalam Manajemen Memori

  • Memori manajer adalah bagian dari sistem operasi yang mempunyai pengaruh dalam menentukan proses mana yang diletakkan pada antrian dan mengatur hirarki memori. Memory manager digunakan untuk mencegah satu proses dari penulisan dan pembacaan oleh proses lain yang dilokasikan di primary memory, mengatur swapping antara memori utama dan disk ketika memori utama terlalu kecil untuk memegang semua proses Swapping merupakan pemindahan proses dari memori utama ke disk dan kembali lagi.
  •  Sebuah proses harus berada di memori untuk dieksekusi. Proses juga dapat ditukar (swap) sementara keluar memori ke backing store dan kemudian dibawa kembali ke memori untuk melanjutkan eksekusi. Backing store berupa disk besar dengan kecepatan tinggi yang cukup untuk meletakkan copy dari semua memory image untuk semua user, sistem juga harus menyediakan akses langsung ke memory image tersebut.
  • Fragmentasi Eksternal terjadi pada situasi dimana terdapat cukup ruang memori total untuk memenuhi permintaan, tetapi tidak dapat langsung dialokasikan karena tidak berurutan. Fragmentasi eksternal dilakukan pada algoritma alokasi dinamis, terutama strategi first-fit dan best-fit. Fragmentasi Internal terjadi pada situasi dimana memori yang dialokasikan lebih besar dari pada memori yang diminta tetapi untuk satu partisi tertentu hanya berukuran kecil sehingga tidak digunakan.
  • Paging merupakan kemungkinan solusi untuk permasalahan fragmentasi eksternal dimana ruang alamat logika tidak berurutan; mengijinkan sebuah proses dialokasikan pada memori fisik yang terakhir tersedia. Memori fisik dibagi ke dalam blok-blok ukuran tetap yang disebut frame. paging diimplementasikan dalam suatu tabel page. Setiap sistem operasi mempunyai metode sendiri untuk untuk menyimpan tabel page. Tiga prinsip dasar dalam implementasi pageing yaitu:                     1)Tabel page diimplementasikan sebagai kumpulan dari “dedicated” register.                                    2) Tabel page disimpan pada main memori dan menggunakan page table base registe” (PTBR) untuk menunjuk ke tabel page yang disimpan di main memori.                                                                    3) Menggunakan perangkat keras cache yang khusus, kecil dan cepat yang disebut associative register atau translation look-aside buffers (TLBs).
  • Multilevel paging digunakan pada sistem yang mempunyai ruang alamat logika yang sangat besar yaitu antara 232 s/d 264. Pada sistem ini, tabel page akan menjadi sangat besar. Misalnya untuk sistem dengan ruang alamat logika 32 bit dan ukuran page 4K byte, maka tabel page berisi 1 juta entry (232 / 212). Solusinya yaitu dengan melakukan partisi tabel ke beberapa beberapa bagian yang lebih kecil.
  • Segmentasi adalah skema manajemen memori yang memungkinkan user untuk melihat memori tersebut. Ruang alamat logika adalah kumpulan segmen. Setiap segmen mempunyai nama dan panjang. Spesifikasi alamat berupa nama segmen dan offset. Segment diberi nomor dan disebut dengan nomor segmen (bukan nama segmen) atau segment number. Segmen dibentuk secara otomatis oleh compiler.

D)   Ruang Alamat Logika Dan Ruang Alamat Fisik

Alamat yang dibangkitkan oleh CPU disebut alamat logika (logical address) dimana alamat terlihat sebagai unit memory yang disebut alamat fisik (physical address). Tujuan utama manajemen memori adalah konsep meletakkan ruang alamat logika ke ruang alamat fisik. Hasil skema waktu kompilasi dan waktu pengikatan alamat pada alamat logika dan alamat memori adalah sama. Tetapi hasil skema waktu pengikatan alamat waktu eksekusi berbeda. dalam hal ini, alamat logika disebut dengan alamat maya (virtual address).

Himpunan dari semua alamat logika yang dibangkitkan oleh program disebut dengan ruang alamat logika (logical address space). Alamat memori yang digunakan oleh program / data berurutan / berjulat. Jika kita menggunakan alamat 1, maka kita pun menggunakan alamat 2,3, … dan untuk 1 informasi jika alamat awalnya 0 dan alamat lainnya relatif terhadap alamat awal 0 ini, maka dinamakan alamat relatif. Dan alamat tersebut adalah logika dari untaian alamat yang menyimpan informasi maka dikenal alamat memori logika.

Himpunan dari semua alamat fisik yang berhubungan dengan alamat logika disebut dengan ruang alamat fisik (physical address space). Sel memori pada memori kerja adalah sumber daya berbentuk fisik, sehingga untuk mencapai sel memori ini digunakan kata pengenal. Maka disebutlah alamat fisik dan karena nomor alamat fisik ini bersifat mutlak (nomor setiap sel adalah tetap), maka disebut juga alamat mutlak.

Memory Manajement Unit (MMU) adalah perangkat keras yang memetakan alamat virtual ke alamat fisik. Pada skema MMU, nilai register relokasi ditambahkan ke setiap alamat yang dibangkitkan oleh proses user pada waktu dikirim ke memori.
Contoh : alamat awal relatif 0, alamat awal fisik 14726, maka selisihnya = relokasinya = 14726-0 = 14726.

Tabel Alamat relatif dan alamat mutlak memori
E)   Virtual Memori

Memori virtual adalah teknik manajemen memor yang dikembangkan untuk kerne multi-tuga. Teknik ini divirtualisasika dalam berbagai bentuk arsitektur kompute dari komputer penyimpanan dat (seperti memori akses aca dan cakram penyimpana), yang memungkinkan sebuah progra harus dirancang seolah-olah hanya ada satu jenis memori dan bertindak secara langsung (RAM). Sebagian besar sistem operasi modern yang mendukung memori virtual menjalankan setiap prose di ruang alama khusus. Setiap program memiliki akses tunggal ke memori virtual. Namun, beberapa sistem operasi yang lebih tua (seperti OS/VS dan OS/VS2 SV) dan bahkan yang modern yang (seperti IBM ) memiliki ruang alamat tungga yang terdiri dari memori virtual untuk menjalankan semua proses.

Memori virtual membuat pemrograman aplikasi lebih mudah untuk fragmentas persembunyian dari memori fisik. Dengan mendelegasikan ke kernel beban dalam mengelola hierarki memori. Sehingga menghilangkan keharusan program dalam mengatasi permasalahan secara eksplisit. Ssetiap proses berjalan dalam ruang alamat khususnya, dengan menghindarkan kebutuhan untuk merelokas kode program atau untuk mengakses memori dengan pengalamatan relatif. Virtualisasi memor adalah generalisasi dari konsep memori virtual.

Leave a Reply