segmentasi

Post on 03-Jan-2016

57 Views

Category:

Documents

6 Downloads

Preview:

Click to see full reader

DESCRIPTION

Segmentasi. Oleh : Solichul Huda, M.Kom. Pendahuluan. Menggunakan pemartisian Dinamis Partisi dilakukan pada waktu akan mengalkasikan proses baru ke memori utama (main memory). Karakteristik. - PowerPoint PPT Presentation

TRANSCRIPT

Segmentasi

Oleh :Solichul Huda, M.Kom

Pendahuluan

• Menggunakan pemartisian Dinamis• Partisi dilakukan pada waktu akan

mengalkasikan proses baru ke memori utama (main memory)

Karakteristik

• Memerlukan pengalamatan logika khusus yang memecah image proses menjadi bagian-bagian yang disebut segmen

• Pembagian segmen dilakukan oleh Compiler, dan pemecahan segmen menjadi unit logika program seperti, main program, stack, subroutine, symbol table

Karakteristik

• Pemartisian utama terjadi secara dinamis pada saat alokasi proses

• Ukuran partisi diseuaikan dengan besar segmen program yang hendak dilakukan

• Sistem segmentasi menggunakan pengalokasian memori tak berurutan

• Segmentasi membutuhkan pengelolaan informasi mengenai seluruh area kosong / hole yang tersebar di memori utama

• Tidak terjadi fragmentasi internal

Alokasi Memori

• Image proses dibagi menjadi beberapa segmen yang ukurannya tidak harus sama

• Pada saat image proses dialokasikan ke memori utama, segmen proses ditempatkan di memori utama yang kosong dan dicatat pada segmen table

• Segment table berisi rekaman nilai limit yang berisi panjang segmen dan nilai base yang berisi alamat awal bagian memori utama yang dialokasikan ke segmen

Alokasi Memori

Limit Base

1000 1400

400 6300

400 4300

1100 3200

1000 4700

Subroutine

Main program

Symboltable

Sqrt

Stack

Segmen 0Segmen 3

Segmen 4segmen4

segmen2

Segmen 0

Segmen 3

segmen2

Segmen 4

segmen1

Segment tableLogical address space

1400

2400

3200

4300

4700

5700

6300

6700

0

1

2

3

4

Translasi Alamat (Address binding)

• Memori sistem komputer menggunakan alamat 16 bit, maksimal kapasitan main memory = 64 Kb

• Bit alamat logika dipecah menjadi nomor segmen dan alamat offset

• Nomor segmen 4 bit, segingga maksimal 16 segmen

• Offset menggunakan 12 bit, maksimum ukuran segmen 4 Kb

Translasi Alamat (Address binding)

• Misal dalam program terdapa instruksi jump[4848]

• Alamat logika 4848 : 0001001011110000

• Nomor segmen 0001• Alamat offset : 752

Translasi Alamat (Address binding)

001011101110 0000010000000000

011110011110 0010000000100000

Length base

0

1

Dari tabel terlihat segmen 1 dialokasikan pada memori pisik8224, sehingga pada saat eksekusi alamat 4848 ditranslasi Menjadi = 8976

Translasi Alamat (Address binding)

000100101110004 12 Jump [4848]

752

Process segment table

8224+

0001100111011110

Proteksi

• Membandingkan nomor offset alamat logika yang diakses dengan nilai limit segmen pada tabel segmen

• Jika nilai offset (d) lebih besar dari nilai limit, berarti terjadi trap, informasi kepada SO telah terjadi kesalahan pengalamatan

Memory Sharing

limit base

25286 43062

4425 68348

limit base

25286 43062

4425 68348editor

Data 1

editor

Data 2

editor

data1

data2

Physical memory

Segmen tabel P1

Segmen table P2

Harus ada rekaman tabel segmen

Logical memory proses P1

top related