Selasa, 14 Juli 2009

Jelaskan istilah pengalamatan logical, relative, Phyisical ?

Nama Kelompok:
1. Misbahol Arifin (07.04.1.1.1.00098)
2. Erwin Andriyansyah (07.04.1.1.1.00049)
3. Dimas T. Putra (07.04.1.1.1.00041)
  • PengalamatanLogical
Pada pengalamatan secara logika, alamat yang ada pada kode program merupakan suatu alamat logika yang masih perlu diterjemahkan atau ditranslasikan kealamat fisik memori utama pada saat eksekusi. Umumnya , translasi almat untuk pengalamatannya secara logika terjadi pada saat eksekusi.

Kelebihan pengalamatan ini adalah relokasi program dapat dilakukan secara fleksibel, bahkan ruang atau kapasitas alamat logika program dapat lebih besar dari kapasitas fisik memori utama. Misalnya program dapat menggunakan ruang alamat logika sebesar 2Giga, sedangkan emori utama fisik di mana program tersebut dijalankan hanya memiliki kapasitas 256 Mega

  • Pengalamatan Phyical

Pada meode pengalamatan memori secara fisik,alamat yang ditulis pada kode instruksi program hasil kompilasi merupakan alamat fisik memory utama yang sesungguhnya. Konsekuensinya adalah pada saat penyalinan image proses ke memori utama, maka kode instruksi dan data program harus disalin pada posisi yang sesuai dengan referensi tersebut. Pada saat eksekusi, prosesor akan memproses alamat pada kode instruksi program secara langsung tanpa melakukan translasi alamat memori.
 Pengalamatan Relative

Pengalamatan relative terutama digunakan pada sistem yang menggunakan alokasi memori berurut, dimana keseluruhan image proses harus terletak di satu area memori yang utuh.
Alamat pada kode instruksi program merupakan alamat relatif(offset) terhadap posisi awal program. Pada saat image proses dari program tersebut disalin atau dialokasikan ke memori utama, alamat awal memorinya dicatat ke suatu register alokasi. Pada saat eksekusi, pemgaksesan alamatakan ditranslasi dengan menjumlahkan alamat referenai pada instruksi dengan isi registrasi alokasi untuk mendapatkan alamat fisik memori yang akan benar-benar diakses. Umumnya proses translasi ini dilakukan menggunakan perangkat keras khusus yang disebut dengan MMU(Memory Management Unit).

2. Jelaskan perbedaan partition, segmentation, dan paging
Perbedaan Segmentasi dan Paging
Ada beberapa perbedaan antara Segmentasi dan Paging diantaranya adalah:
1. Segmentasi melibatkan programer (programer perlu tahu teknik yang digunakan), sedangkan dengan paging, programer tidak perlu tahu teknik yang digunakan.
2. Pada segmentasi kompilasi dilakukan secara terpisah sedangkan pada paging, kompilasinya tidak terpisah.
3. Pada segmentasi proteksinya terpisah sedangkan pada paging proteksinya tidak terpisah.
4. Pada segmentasi ada shared code sedangkan pada paging tidak ada shared code.
5. Pada segmentasi terdapat banyak ruang alamat linier sedangkan pada paging hanya terdapat satu ruang alamat linier.
6. Pada segmentasi prosedur dan data dapat dibedakan dan diproteksi terpisah sedangkan pada paging prosedur dan data tidak dapat dibedakan dan diproteksi terpisah.
7. Pada segmentasi pengubahan ukuran tabel dapat dilakukan dengan mudah sedangkan pada Paging pengubahan ukuran tabel tidak dapat dilakukan dengan mudah.
8. Segmentasi digunakan untuk mengizinkan program dan data dapat dipecahkan jadi ruang alamat mandiri dan juga untuk mendukung sharing dan proteksi sedangkan paging digunakan untuk mendapatkan ruang alamat linier yang besar tanpa perlu membeli memori fisik lebih.
3. Bagaimana perhitungan alamat absoliut pada paging dan segmentation ?
contoh
Pengimplementasian Segmentasi dengan Pemberian Halaman Pada Intel i386
Salah satu contoh prosesor yang menggunakan metode segmentasi dengan pemberian halaman ini diantaranya adalah Intel i386. Jumlah maksimum segmen tiap proses adalah 16 K dan besar tiap segmen adalah 4 GB. Dan ukuran halamannya adalah 4 KB.
Logical Address
Ruang logical address dari suatu proses terbagi menjadi dua partisi yaitu:
1. Partisi I
o Terdiri dari segmen berjumlah 8 K yang sifatnya pribadi atau rahasia terhadap proses tersebut.
o Informasi tentang partisi ini disimpan didalam Local Descriptor Table.
2. Partisi II
o Terdiri dari 8 K segmen yang digunakan bersama diantara proses-proses tersebut.
o Informasi tentang partisi ini disimpan didalam Global Descriptor Table.
Tiap masukan atau entri pada Local Descriptor Table dan Global Descriptor Table terdiri dari 8 bita dengan informasi yang detil tentang segmen khusus termasuk lokasi dasar dan panjang segmen tersebut.
Logical address merupakan sepasang:
1. Selektor
Terdiri dari angka 16 bit:
Dimana s = jumlah segmen (13 bit)
g = mengindikasikan apakah segmen ada di
Global Descriptor Table
atau Local Descriptor Table
(1 bit)
p= proteksi(2 bit)

s g p
13 1 2

2. Offset
Terdiri dari angka 32 bit yang menspesifikasikan lokasi suatu kata atau bita di dalam segmen tersebut.
Mesin memiliki 6 register segmen yang membiarkan 6 segmen dialamatkan pada suatu waktu oleh sebuah proses. Mesin meiliki register program mikro 8 bita untuk menampung descriptor yang bersesuaian baik dari Global Descriptor Table atau Local Descriptor Table. Cache ini membiarkan 386 menghindari membaca descriptor dari memori untuk tiap perujukan memori.
Alamat Fisik
Alamat fisik 386 panjangnya adalah 32 bit. Mula-mula register segmen menunjuk ke masukan atau entri di Global Descriptor Table atau Local Descriptor Table. Kemudian informasi dasar dan limit tentang segmen tersebut digunakan untuk mengeneralisasikan alamat linier. Limit itu digunakan untuk mengecek keabsahan alamat. Jika alamat tidak sah maka akan terjadi memori fault yang menyebabkan terjadinya trap pada sistem operasi. Sedangkan apabila alamat itu sah maka nilai dari offset ditambahkan kenilai dasar yang menghasilkan alamat linier 32 bit. Alamat inilah yang kemudian diterjemahkan ke alamat fisik.
Seperti dikemukakan sebelumnya tiap segmen dialamatkan dan tiap halaman 4 KB. Sebuah tabel halaman mungkin terdiri sampai satu juta masukan atau entri. Karena tiap entri terdiri dari 4 byte, tiap proses mungkin membutuhkan sampai 4 MB ruang alamat fisik untuk halaman tabel sendiri. Sudah jelas kalau kita tidak menginginkan untuk mengalokasi tabel halaman bersebelahan di memori utama. Solusi yang dipakai 386 adalah dengan menggunakan skema paging dua tingkat (two-level paging scheme). Alamat linier dibagi menjadi nomer halaman yang terdiri dari 20 bit dan offset halaman terdiri dari 12 bit. Karena kita page tabel halaman dibagi jadi 10 bit penunjuk halaman direktori dan 10 bit penunjuk tabel halaman sehingga logical address menjadi:
nomor halaman
offset halaman
p1 p2 d
10 10 12

Tidak ada komentar:

Posting Komentar

Komentar anda adalah masukan bagi saya... :-)