//
you're reading...
Sistem Operasi, tugas kelompok

Manajemen Proses Mac OS X

Mac OS X dibangun pada arsitektur mikro-kernel Mach  yang telah teruji dan terbukti.micro-kernel Mach mengatur penggunaan CPU dan memory, menangani penjadwalan, memberikan perlindungan memory, dan menyediakan infrastruktur pesan ke seluruh sistem operasi. Di atas micro-kernel Mach bertengger yang menjadi dasarnya ialah FreeBSD. Lapisan BSD ini menyediakan  sistem manajemen file, jaringan, kebijakan keamanan, model proses  standar BSD dengan prosesID dan sinyal. Ia uga menyediakan implementasi standar POSIX yang menjadi benang banyak aplikasi (seperti MySQL). Untuk fitur standar UNIX, Apple telah menambahkan beberapa perbaikan. Perangkat tambahan telah ditambahkan ke sistem file buffer cache dan file I / O clustering. Peningkatan ini termasuk adaptif dan spekulatif membaca depan, proses pengguna dikendalikan membaca ke depan, dan waktu umur sistem file buffer cache.

 

 

 

 

 

 

 

 

0 – Running. CPU saat ini sedang mengeksekusi proses ini.
1 – Runnable from main memory, disimpan dalam memory utama dan siap untuk  dijalankan.
2 – Runnable, disimpan di swap, sipa untuk dijalankan namun telah dipindahkan ke memori sekunder dalam ruang swap.
3 – Sleeping in primary storage, menunggu untuk sebuah interupsi IO atau interupsi lain untuk membangkitkannya.

4 – Sleeping in swap space, menunggu untuk sebuah interupsi IO atau interupsi lain untuk membangkitkannya dan menukarnya kembali ke memory utama untuk dieksekusi.

 

Suatu proses yang aktif biasanya di salah satu dari lima bagian di diagram. Panah menunjukkan bagaimana perubahan bagian.

Sebuah proses berjalan jika ditugaskan ke CPU. Sebuah proses adalah mendahului – yaitu, dihapus dari bagian yg running  – oleh scheduler jika suatu proses dengan prioritas yang lebih tinggi menjadi runnable. Sebuah proses juga mendahului jika mengkonsumsi bagian  seluruh waktu dan proses dengan  prioritas yang sama adalah runnable.

Suatu proses runnable dalam memori jika berada dalam memori utama dan siap untuk dijalankan, tetapi tidak ditugaskan untuk CPU.

Sebuah proses sedang sleeping in memory jika berada dalam memori utama tetapi menunggu untuk spesifik event sebelum dapat melanjutkan eksekusi. Sebagai contoh, suatu proses adalah sleeping  jika menunggu  sebuah I / O operasi untuk komplit, untuk sumber daya yang dikunci menjadi dibuka, atau untuk timer untuk berakhir. Ketika peristiwa terjadi, proses mengirim sebuah pembangkit, jika alasan untuk tidur adalah hilang, proses menjadi runnable.

Suatu proses adalah runnable dan swapped jika tidak menunggu spesifik event  tetapi memiliki ruang alamat keseluruhannya ditulis ke memori sekunder untuk membuat ruang di memori utama untuk proses lainnya.

Sebuah proses adalah sleeping dan swapped  jika keduanya menunggu spesifik event dan memiliki ruang alamat keseluruhannya ditulis ke memori sekunder untuk membuat ruang di memori utama untuk proses lainnya.

Jika mesin tidak memiliki cukup memori utama untuk menampung semua proses yang aktif, ia harus menukar beberapa halaman atau ruang alamat ke memori sekunder:

Ketika sistem sedang kekurangan  dari memori utama, ia menulis halaman individual dari beberapa proses ke memori sekunder, tetapi masih meninggalkan proses-proses runnable. Ketika sebuah proses berjalan, jika ia mengakses halaman tersebut, ia harus tidur ketika membaca kembali halaman ke dalam memori utama.

Ketika  mendapatkan sistem menjadi masalah yang lebih serius pada kekurangan memori utama, ia  menulis semua halaman dari beberapa proses ke memori sekunder dan menandai proses tersebut sebagai swap. proses tersebut kembali ke keadaan di mana mereka dapat dijadwalkan hanya dengan menjadi dipilih oleh scheduler proses sistem daemon, kemudian dibaca kembali ke dalam memori.

Baik itu paging dan swapping menyebabkan delay  saat proses siap dijalankan lagi. Untuk proses yang memiliki persyaratan waktu yang ketat, penundaan ini dapat diterima.
Untuk menghindari keterlambatan swapping, real-time proses tidak pernah ditukar, meskipun sebagian dari mereka dapat dipanggil. Suatu program dapat mencegah paging dan swapping dengan mengunci teks dan data ke dalam memori primer. Berapa banyak memori dapat dikunci dibatasi oleh berapa banyak memori yang dikonfigurasi. Juga, penguncian terlalu banyak dapat menyebabkan keterlambatan ditolerir untuk proses yang tidak memiliki teks dan data terkunci ke dalam memori.

Trade-off antara kinerja proses real-time dan kinerja proses lain tergantung pada kebutuhan lokal. Pada beberapa sistem, proses penguncian mungkin dibutuhkan untuk menjamin keperluan real-time response.

 

About kusukaitu

nothing special..

Diskusi

Belum ada komentar.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: