Ads 468x60px

welcome

welcome

welcome

welcome

welcome

Minggu, 01 Juli 2012

PAPER STRUKTUR SISTEM WINDOWS

PAPER STRUKTUR SISTEM WINDOWS


Oleh : YUSUF. MACHSAR
100411100026

TEKNIK INFORMATIKA
UNIVERSITAS TRUNOJOYO MADURA





























ABSTRAK
Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditempatkan pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan “kernel” suatu Sistem Operasi.
Kalau sistem komputer terbagi dalam lapisan-lapisan, maka Sistem Operasi adalah  penghubung antara lapisan hardware dan lapisan software. Lebih jauh daripada itu, Sistem Operasi melakukan semua tugas-tugas penting dalam komputer, dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan lancar. Sistem Operasi menjamin aplikasi software lainnya dapat menggunakan memori, melakukan input dan output terhadap peralatan lain dan memiliki akses kepada sistem file. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur skedule yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu.

LATAR BELAKANG
Sistem operasi modern adalah suatu sistem yang besar dan kompleks. Dan tentu saja proses mendesain sistem operasi bukanlah pekerjaan mudah. Karena itu, didalam desain sistem operasi digunakan suatu struktur agar sistem tersebut bisa dipelajari dengan mudah. digunakan, dan dikembangkan ebih lanjut. Jika pada bab sebelumnya, kita memandang sistem operasi dari luar, yaitu dengan system call yang bisa digunakan, maka dalam bab ini kita akan melihat dari dalam, yaitu bagaimana sistem operasi disusun. Ternyata, ada beberapa pendekatan/model yang digunakan, seperti struktur sederhana, struktur berlapis, dan mikro kernel.














STRUKTUR SYSTEM WINDOWS

Windows mulai dari Windows 2000 dan seterusnya adalah satu contoh berpengaruh nyata dari gelombang baru dalam sistem operasi komputer mikro (contoh lain adalah Linux dan MacOS). Windows dipandu oleh suatu kebutuhan untuk memanfaatkan kemampuan proses dari hari ini 32 – bit dan 64 mikroprosesor bit, yang mana dalam sebuah mainframe dan hanya beberapa tahun silam di kecepatan, kesempurnaan perangkat keras, dan kapasitas memory.

+) Arsitektur
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzbSSprk0QHifkCLb6AcnOZauZcEG771Iy7doJAObchWJcrdHV3-Rka7WjiJ_jCwudpoCatRTv_V3S-hFyqkeg_E4TCOo_ttWKYmhuPZ384ooZLMslEu9g0mJBbgJTrzgycebNYWZENCE/s400/overview-1.jpg

Gambar di atas merupakan struktur dari keseluruhan keluarga Windows yang ada sampai saat ini. Struktur modular yang memberikan fleksibilitas Windows ini didisain untuk meng-execute pada berbagai platform perangkat keras dan aplikasi pendukung disertakan dalam berbagai sistem operasi lain.

Client/Server Model

Layanan Sistem operasi Windows, memproteksi subsistim, dan aplikasi-aplikasi adalah struktur penggunaan klien / server model komputasi, yaitu satu umum model untuk perhitungan terdistribusi dan yang didiskusikan di Bagian Enam. Arsitektur yang sama ini dapat diadopsi untuk mempergunakan internal ke satu sistem tunggal, seperti halnya kasus dengan Windows.
Native NT API adalah layanan seperangkat dasar Kernel yang menyediakan abstrak inti dipergunakan oleh sistem, proses seperti itu, threads, virtual memory, I/O, dan komunikasi. Windows menyediakan satu setelan jauh lebih kaya dari jasa dengan mempergunakan klien/server model untuk menerapkan kemampuan di proses mode-pengguna. Kedua lingkungan subsistim dan jasa user-mode Windows diterapkan seperti proses tersebut
berhubungan dengan klien melalui RPC. Masing-masing server proses menunggu satu permintaan dari satu klien untuk salah satunya dilayani (seperti service memory,layanan memproses ciptaan, atau layanan networking). Satu klien, yang dapat satu program aplikasi atau program server lain, permintaan satu jasa dengan mengirimkan satu pesan. Pesan ditaklukkan melalui Eksekutif ke server yang sesuai. Server melaksanakan operasi yang diminta dan mengembalikan keterangan hasil atau status atas pertolongan pesan lain,yaitu taklukkan melalui Eksekutif kembali ke klien.

Threads and SMP
Dua karakteristik penting dari Windows adalah ini mendukung untuk menyusupkan symmetric multiprocessing (SMP), keduany diperkenalkan di Bagian 2.4. [RUSS05] daftar-daftar fitur dari Windows mendukungan THREADS dan SMP:
• Compatible OS dapat berjalan pada prosesor apapun yang tersedia, dan yang berbeda dapat laksanakan secara bersamaan pada prosesor berbeda.
• Windows mendukung penggunaan dari multiple threads dari pengeksekusian diantara proses tunggal. Multiple threads pada proses yang sama mungkin mengeksekusi pada prosesor berbeda secara serempak.
• Proses server mungkin mempergunakan multiple threads untuk memproses permintaan dari lebih dari satu klien secara serempak.
• Windows menyediakan mekanisme untuk berbagi data dan sumber daya di antara proses dan kemampuan komunikasi interproses.

Threads Windows
Windows mengunakan Win32 API sebagai API utama dalam hampir semua sistem
operasi Microsoft. Selain itu windows mengimplementasi model relasi One-to-One,
dimana terdapat satu kernel thread yang berasosiasi dengan masing – masing user
thread. Thread pada windows secara umum mempunyai komponen sebagai
berikut :
· Thread ID
· Register set
· User stack dan kernel stack
· Private storage area.
Register set, stacks dan private data storage disebut sebagai context dari sebuah
thread. Struktur data utama dari sebuah thread :
· ETHREAD (executive thread block)
· KTHREAD (kernel thread block)
· TEB (thread environment block)

Kesimpulan
Windows dalam mengimplementasikan thread memakai model One-to-One. Sehingga windows mendukung multithreading. Win32 API adalah pustaka thread yang digunakan oleh windows. Struktur data utama dalam thread windows : ETHREAD (executive thread block), KTHREAD (kernel thread block) yang keduanya berada pada kernel-level dan TEB (thread environment block) yang berada pada user-level.
SMP pada Windows
Pada Windows, prosesor afinitas memberikan potensi kinerja cache dioptimalkan. Secara khusus, dengan mengisolasi benang yang mengakses data yang sama untuk satu prosesor, Anda dapat mengurangi jumlah invalidations data yang muncul dari utas swapping antara beberapa core.
Dengan menggunakan fungsi prosesor afinitas dalam winbase.h, Anda dapat mengontrol yang core yang tersedia untuk digunakan sistem dan mana yang dicadangkan untuk thread tertentu. Ada dua fungsi utama yang dapat Anda gunakan untuk mempengaruhi ketersediaan core tertentu pada Windows:
Sebuah topeng afinitas prosesor adalah vektor bit yang setiap bit merupakan prosesor yang benang proses yang diizinkan untuk berjalan di. Nilai topeng afinitas prosesor harus merupakan bagian dari nilai-nilai sistem afinitas masker diperoleh oleh fungsi GetProcessAffinityMask.
Sebuah topeng afinitas benang adalah vektor bit yang setiap bit merupakan prosesor yang thread diperbolehkan untuk berjalan di. Sebuah topeng afinitas benang harus merupakan bagian dari topeng afinitas prosesor untuk proses yang mengandung benang. Sebuah thread dapat berjalan hanya pada prosesor yang prosesnya dapat berjalan pada.
Catatan: Pada Windows, pengaturan masker afinitas untuk proses atau thread dapat mengakibatkan benang menerima waktu prosesor kurang karena sistem ini dibatasi dari menjalankan benang pada prosesor tertentu Dalam kebanyakan kasus, lebih baik membiarkan OS Windows pilih tersedia. prosesor.
Symmetric Multiprocessing (SMP)
SMP Arsitektur
Kernel Linux 2.0 adalah kernel Linux pertama yang stabil untuk mendukung perangkat keras symmetric multiprocessor (SMP). Proses mau pun thread yang berbeda dapat dieksekusi secara paralel dengan processor yang berbeda. Tapi bagaimana pun juga untuk menjaga kelangsungan kebutuhan sinkronisasi yang tidak dapat di-preemptive dari kernel, penerapan SMP ini menerapkan aturan dimana hanya satu processor yang dapat dieksekusi dengan kode mode kernel pada suatu saat. SMP menggunakan kernel spinlock tunggal untuk menjalankan aturan ini. Spinlock ini tidak memunculkan permasalahan untuk pekerjaan yang banyak menghabiskan waktu untuk menunggu proses komputasi, tapi untuk pekerjaan yang melibatkan banyak aktifitas kernel, spinlock dapat menjadi sangat mengkhawatirkan.
Sebuah proyek yang besar dalam pengembangan kernel Linux 2.1 adalah untuk menciptakan penerapan SMP yang lebih masuk akal, dengan membagi kernel spinlock tunggal menjadi banyak kunci yang masing-masing melindungi terhadap masuknya kembali sebagian kecil data struktur kernel. Dengan menggunakan teknik ini, pengembangan kernel yang terbaru mengizinkan banyak processor untuk dieksekusi oleh kode mode kernel secara bersamaan.
Hal ini berguna untuk melihat di mana SMP arsitektur muat ke dalam kategori keseluruhan paralel prosesor. Sebuah taksonomi yang menyoroti sistem prosesor paralel pertama kali diperkenalkan oleh Flynn [FLYN72] masih merupakan cara paling umum mengkategorikan sistem tersebut. Flynn diusulkan dengan kategori sebagai berikut sistem komputer: • instruksi tunggal data tunggal (SISD) stream: Sebuah prosesor tunggal menjalankan sebuah aliran instruksi untuk beroperasi pada data yang tersimpan dalam memori tunggal.
• Single instruksi multiple data (SIMD) stream: Sebuah mesin tunggal instruksi mengontrol eksekusi simultan dari sejumlah elemen pengolahan pada dasar berbaris. Setiap elemen pemrosesan memiliki memori data yang terkait, sehingga bahwa setiap instruksi dieksekusi pada satu set data yang berbeda oleh berbagai prosesor. Array prosesor vektor dan termasuk dalam kategori ini. • Beberapa instruksi data tunggal (MISD) stream: Sebuah urutan data ditransmisikan ke satu set prosesor, masing-masing melaksanakan instruksi yang berbeda urutan. Struktur ini tidak pernah dilaksanakan.



• Beberapa instruksi multiple data (MIMD) stream: Satu set prosesor secara simultan mengeksekusi urutan instruksi yang berbeda pada set data yang berbeda.








Organisasi SMP
Ada multiprosesor, masing-masing berisi kontrol unit sendiri, unit aritmatika-logika, dan register. Setiap prosesor memiliki akses ke memori utama bersama dan perangkat I / O melalui beberapa bentuk mekanisme interkoneksi; bus bersama adalah fasilitas umum. Itu prosesor dapat berkomunikasi satu sama lain melalui memori (pesan dan status informasi yang tersisa dalam ruang alamat bersama-sama). Hal ini juga dapat dibuat untuk prosesor untuk pertukaran sinyal secara langsung. memori ini sering diselenggarakan simultan sehingga akses ganda untuk blok terpisah dari memori yang mungkin. Pada komputer modern, prosesor umumnya memiliki setidaknya satu tingkat cache memori yang swasta untuk prosesor. Penggunaan cache ini memperkenalkan beberapa pertimbangan desain baru. Karena setiap cache lokal berisi gambar sebagian utama memori, jika sebuah kata berubah dalam satu cache, itu menurut pikiran bisa membatalkan kata dalam cache lain. Untuk mencegah hal ini, prosesor lain harus diberitahu bahwa pembaruan telah terjadi. Masalah ini dikenal sebagai masalah koherensi cache dan biasanya dibahas dalam perangkat keras daripada oleh OS.7

0 komentar:

Posting Komentar

About