Tugas 1 Jaringan Komputer

Cari contoh dilapangan berdasarkan sumber yang dianjurkan di slide atau yang dapat dipercaya:

  1. Klasifikasi Jaringan Komputer yang anda ketahui?
  1. Berdasarkan distribusi
  • Jaringan terpusat

Jaringan ini terdiri dari komputer klien dan server yang mana komputer klien yang berfungsi sebagai perantara untuk mengakses sumber informasi/data yang berasal dari komputer server

  • Jaringan terdistribusi

Merupakan perpaduan beberapa jaringan terpusat sehingga terdapat beberapa komputer server yang saling berhubungan dengan klien membentuk sistem jaringan tertentu.

  1. Berdasarkan jangkauan geografis
  • Jaringan LAN

Suatu jaringan komputer yang menghubungkan suatu komputer dengan komputer dengan jarak yang terbatas.

  • Jaringan MAN

Jaringan yang mencakup satu kota besar daerah setempat

  • Jaringan WAN

Jaringan dengan cakupan luas, jaraknya antar kota, negara, dan benua

  1. Berdasarkan peranan dan hubungan tiap komputer
  • Jaringan Client-server

Jaringan komputer dengan sebuah komputer yang didedikasikan khusus sebagai server. Pada jaringan ini terdapat 1 atau beberapa komputer server dan komputer klien.

  • Jaringan Peer-to-Peer

Jaringan ini tidak ada komputer klien maupun komputer server karena semua komputer dapat melakukan pengiriman maupun penerimaan informasi sehingga semua komputer berfungsi sebagai klien sekaligus sebagai server.

  1. Berdasarkan media transmisi data
  • Jaringan berkabel

untuk menghubungkan satu komputer dengan komputer lain diperlukan penghubung berupa kabel jaringan.

  • Jaringan Nirkabel

Jaringan dengan medium berupa gelombang elektromagnetik. Pada jaringan ini tidak diperlukan kabel untuk menghubungkan antar komputer karena menggunakan gelombang elektromagnetik yang akan mengirimkan sinyal informasi antar komputer jaringan.

  1. Implementasi perkembangan jaringan komputer?
  • Tahun 1940-an

Sebuah proyek pengembangan komputer MODEL I di laboratorium Bell dan group riset Harvard University yang dipimpin profesor H. Aiken. Tujuannya untuk memanfaatkan sebuah perangkat komputer yang harus dipakai bersama. Untuk mengerjakan beberapa proses tanpa banyak membuang waktu kosong.

 

  • Tahun 1950-an

Ditemukan konsep distribusi proses berdasarkan waktu yang dikenal dengan nama TSS (Tim

e Sharing System), maka untuk pertama kali bentuk jaringan (network) komputer diaplikasikan. Pada sistem TSS beberapa terminal terhubung secara seri ke sebuah host komputer.

 

  • Tahun 1970-an

Digunakan konsep proses distribusi (Distributed Processing). Dalam proses ini beberapa host komputer mengerjakan sebuah pekerjaan besar secara paralel untuk melayani beberapa terminal yang tersambung secara seri disetiap host komputer

 

  • Tahun 1972

Roy Tomlinson berhasil menyempurnakan program surat elektonik (email) yang dibuatnya setahun yang lalu untuk ARPANET. Program tersebut begitu mudah untuk digunakan, sehingga langsung menjadi populer. Pada tahun yang sama yaitu tahun 1972, ikon at (@) juga diperkenalkan sebagai lambang penting yang menunjukan “at” atau “pada”. Tahun 1973, jaringan komputer ARPANET mulai dikembangkan meluas ke luar Amerika Serikat.

 

  • Tahun 1982

Dibentuk sebuah Transmission Control Protocol (TCP) atau lebih dikenal dengan sebutan Internet Protocol (IP) yang kita kenal hingga saat ini. Sementara itu, di Eropa muncul sebuah jaringan serupa yang dikenal dengan Europe Network (EUNET) yang meliputi wilayah Belanda, Inggris, Denmark, dan Swedia. Jaringan EUNET ini menyediakan jasa surat elektronik dan newsgroup USENET.

 

  • Tahun 1984

Diperkenalkan Sistem Penamaan Domain atau domain name system, yang kini kita kenal dengan DNS. Komputer yang tersambung dengan jaringan yang ada sudah melebihi 1000 komputer lebih.

 

  • Tahun 1988

Jarkko Oikarinen seorang berkebangsaan Finlandia menemukan sekaligus memperkenalkan Internet Relay Chat atau lebih dikenal dengan IRC yang memungkinkan dua orang atau lebih pengguna komputer dapat berinteraksi secara langsung dengan pengiriman pesan (Chatting ).

 

  • Tahun 1990

Tim Berners Lee merancang sebuah programe penyunting dan penjelajah yang dapat menjelajai komputer yang satu dengan yang lainnya dengan membentuk jaringan. Programe inilah yang disebut Waring Wera Wanua atau World Wide Web.

 

  • Tahun 1994

situs-situs di internet telah tumbuh menjadi 3000 alamat halaman, dan untuk pertama kalinya berbelanja melalui internet atau virtual – shopping atau e – retail muncul di situs. Pada tahun yang sama Yahoo! didirikan, yang juga sekaligus tahun kelahiran Netscape Navigator 1.0.

Source : http://med.unhas.ac.id/neo/materi-kuliah/jarkom/chapter1.pdf

  1. Buat gambaran implementasi jaringan komputer terhadap teknologi sekarang? Boleh dengan visualisasi gambar atau skema?

Perkembangan jaringan komputer dewasa kini makin pesat, dengan teknologi yang terbaru dan terbarui sehingga makin memudahkan aktivitas di kehidupan sehari-hari. Berikut penerapan jaringan komputer pada beberapa bidang, diantaranya:

  1. Dalam dunia bisnis
  • Untuk media komunikasi antar perusahaan atau konsumen
  • Distribusi data dan informasi yang lebih cepat melalui jaringan komputer untuk proses pengambilan keputusan.
  • Keamanan data yang lebih tinggi dengan beberapa fitur seperti firewall, enskripsi dan berbagai fitur sekuritas lain.
  • Memungkinkan resource sharing
  • E-Bussiness atau e-commerce yang memungkinkan terjadinya toko online.
  • Integrasi antar berbagai layanan yang lebih baik.

 

  1. Dalam kehidupan rumah tangga
  • Komunikasi antar pengguna dengan bantuan layanan jaringan seperti sms, email dan chat
  • Hiburan interaktif seperti game online, streaming audio atau video, dan lain-lain.
  • Mudah mendapatkan informasi untuk kebutuhan sehari-hari melalui browsing internet.

 

  1. Dalam hubungan sosial
  • Informasi mengenai masalah-masalah sosial di sekitar kita dengan portal berita terupdate,
  • Group milis dalam suatu komunitas,
  • Jejaring sosial yang makin beragam dan terintegrasi.

 

  1. Penggunaan Mobile
  • Portable office yang memungkinkan pengelolaan file atau dokumen melalui perangkat mobile
  • Perkembangan jaringan yang semakin maju sehingga memungkinkan berbagai layanan makin meningkat, contoh : jaringan 2G ke 3G yang memnungkinkan video call, streaming pada perangkat mobile dengan baik.
  • Portable hotspot dengan adanya fungsi tethering pada perangkat seperti smartphone

 

  1. Dalam bidang pendidikan
  • Virtual class atau e-learning dengan sistem online yang bisa membantukegiatan pembelajaran

Sistem informasi akademik yang terintegrasi dengan database dan aplikasi pembelajaran lainnya.

Adapun gambaran secara umum dapat dilihat secara umum:

Manajemen Proses Pada LINUX

Logo Ubuntu

Hey Guys, Kali ini saya akan membahas tentang Manajemen Proses pada Linux. Yuk langsung aja…

Manajemen Proses

Proses adalah program yang sedang dieksekusi. Di Linux, setiap program merupakan proses. Proses dapat diciptakan dan dapat pula dimusnahkan. Ketika sistem operasi GNU/Linux pertama kali diaktifkan, saat itu pula proses yang bertanggung jawab untuk memuat kernel diciptakan. Proses yang pertama kali diciptakan di Linux disebut init. Konsep proses di Linux memiliki kemiripan dengan konsep file permission.

Dalam pengertian setiap user hanya dapat memanipulasi proses yang menjadi miliknya. Setiap proses juga memiliki PID atau Process ID yang merupakan nomor unik yang dapat digunakan untuk berinteraksi dengan proses bersangkutan.

Terdapat 4 konsep dasar manajemen proses :

  1. Multiprogramming, salah satu teknik penjadwalan dimana tugas (task) yang sedang berjalan tetap berjalan sampai ia melakukan operasi yang membutuhkan waktu untuk menunggu respon dari luar (external event), misalnya membaca data dari disket/CD/dsb, atau sampai komputer memaksa untuk menukar tugas yang sedang berjalan dengan tugas lainnya.
  2. Pseudoparallelism, eksekusi proses secara paralel pada sistem.
  3. Multiprcessing, kemampuan pemrosesan komputer yang dilakukan secara serentak. Istilah ini juga dapat merujuk kepada dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut.
  4. Distributed Processing, Mengerjakan semua proses pengolahan data secara bersama antara komputer pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi.

Model-model proses :

  1. Sequential Proses.
  2. Multiprogramming.
  3. CPU Switching.

Operasi – operasi pada Proses :

  1. Penciptaan proses (create a process).
  2. Penghancuran/terminasi proses (destroy a process).
  3. Penundaan proses (suspend a process).
  4. Pelanjutan kembali proses (resume a process).
  5. Mem-block proses.
  6. Membangunkan proses.
  7. Menjadwalkan proses.
  8. Komunikasi Antar Proses.

Nah disini kita akan mengimplementasikan beberapa operasi – operasi dengan terminal, yuk langsung aja..

Perintah-perintah proses di linux :

  • Instruksi ps (process status) digunakan untuk melihat kondisi proses yang ada. PID adalah Nomor Identitas Proses, TTY adalah nama terminal dimana proses tersebut aktif, STAT berisi S (Sleeping) dan R (Running), COMMAND merupakan instruksi yang digunakan.

ps

ps

  • Untuk melihat faktor/elemen lainnya, gunakan option –u (user). %CPU adalah presentasi CPU time yang digunakan oleh proses tersebut, %MEM adalah presentasi system memori yang digunakan proses, SIZE adalah jumlah memori yang digunakan, RSS (Real System Storage) adalah jumlah memori yang digunakan, START adalah kapan proses tersebut diaktifkan.

ps u

ps u

  • Mencari proses yang spesifik untuk pemakai.

ps -u <user>

ps -u galihpw

  • Mencari proses lainnya gunakan opsi a, au dan aux

ps -a
ps -au
ps -aux

ps -aux

  • Melihat proses yang sedang berjalan

top

top
htop

htop
Catatan : untuk install htop ketik command sudo apt-get install htop (perlu koneksi internet)

  • Menampilkan hubungan proses parent dan child

ps -eH >> Menampilkan hubungan proses parent dan child

pd -eH

ps -eF >> Menampilkan hubungan proses parent dan child serta letak prosesnya

ps -eF

  • Menampilkan semua proses pada sistem dalam bentuk hirarki parent/child

pstree

pstree

  • Menghentikan suatu proses/job
  1. kill %<nomor job> contoh : kill %1
  2. kill <PID> contoh : kill 1908
  3. pkill <nama proses> contoh : pkill firefox
  4. pkillall <nama proses> contoh : pkillall firefox
  • Mengubah prioritas suatu proses

renice <prioritas> <PID>

 

Referensi :
Modul Praktikum Mata Kuliah Sistem Operasi 2014

Catatan :
Dilarang menyalin/mengedit/merubah tulisan ini tanpa mencantumkan alamat blog ini di referensi.

Mari Megenal Perintah Dasar Di Terminal LINUX

Logo Ubuntu

 

Hey Guys, Kali ini Saya akan membahas tentang perintah dasar pada terminal LINUX. Nah disini saya akan memakai OS Ubuntu. Sebelum saya mulai dengan terminal, mari kita mengenal sedikit tentang LINUX terlebih dahulu.

LINUX
LINUX adalah sebuah sistem operasi yang dikembangkan oleh Linus Benedict Torvalds dari Universitas Helsinki Finlandia sebagai proyek hobi mulai tahun 1991. Ia menulis Linux, sebuah kernel untuk prosesor 80386, prosesor 32-bit pertama dalam kumpulan CPU Intel yang cocok untuk PC. Baru pada tanggal 14 Maret 1994 versi 1.0 mulai diluncurkan, dan hal ini menjadi tonggak sejarah Linux.

Linux termasuk sistem operasi yang didistribusikan secara open source, artinya kode sumber Linux diikutsertakan sehingga dapat dipelajari dan dikembangkan dengan mudah. Selain itu Linux dikembangkan oleh GNU (General Public License).

Nah itu sedikit penjelasan tentang Linux. Yuk lanjut…

Pengguna Linux sebenarnya tidak diwajibkan untuk memahami perintah dasar Linux, namun sebagai pembelajaran mengenai proses didalamnya perintah dasar Linux menjadi sesuatu yang patut untuk dipelajari.

Perintah-perintah dasar Linux di eksekusi dengan menggunakan Terminal/Console. Yuk kita buka dulu Terminalnya. Ada 2 cara untuk membukanya, yaitu :

  • Dash Menu | ketikan “terminal” | klik terminal.
  • Menggunakan shortcut [CTRL] + [ALT] + [T]
Dash Menu
Dash Menu

Nah setelah perintah diatas dilakukan, pasti Jendela Terminal akan terbuka.

Jendela Terminal
Jendela Terminal

Karena Jendela Terminal sudah terbuka, mari kita langsung ke perintah – perintah dasar pada Terminal Linux.

Perintah Dasar untuk Penanganan File

  • Membuat Direktori

mkdir nama_folder

Misalkan kita akan membuat sebuah folder dengan nama “Enjoy”, maka pada terminal ketikkan perintah berikut:

mkdir Enjoy

Setelah itu akan tercipta sebuah folder baru yang bernama “Enjoy” di direktori yang sedang aktif.

  • Menampilkan isi direktori

ls

Jika dijalankan begitu saja perintah ini akan menampilkan daftar file dan folder
yang berada di direktori yang sedang aktif.

ls command

Perintah ls ini bisa ditambah dengan atribut-atribut yang lain untuk memperoleh tampilan daftar isi direktori yang berbeda. Seperti:

  1. ls -l : memperlihatkan daftar file disertai dengan atribut seperti pemilik, permission, ukuran, dan tanggal modifikasi.
  2. ls -a : memperlihatkan daftar file dan file tersembunyi di dalam direktori sekarang tanpa atribut apapun.
  3. ls -al : menggabungkan opsi perintah -l dan -a untuk ls.
  4. ls/direktori/enjoy : memperlihatkan daftar file dari /direktori/enjoy.
  •  Berpindah direktori

cd direktori_tujuan

Perintah ini digunakan untuk berpindah ke direktori yang lain. Contohnya kita sedang berada di direktori “home” dan ingin berpindah ke direktori lain yang
bernama “apa_atuh” maka perintah yang bisa dilakukan adalah:

cd apa_atuh

maka seketika kita akan berpindah ke dalam direktori “apa_atuh” tersebut. Perintah cd ini juga memiliki parameter yang lain untuk berpindah ke folder, diantaranya:

  1. cd direktori/ → pindah direktori ke direktori yang berada di dalam direktori sekarang.
  2. cd~ → pindah ke direktori home.
  3. cd .. → pindah satu direktori ke direktori teratas atau kembali ke direktori sebelumnya.
  4. cd ../../n → pindah n direktori sebelumnya.
  5. cd /direktori/sesuatu → pindah ke direktori tanpa harus mundur ke direktori sebelumnya. Akan pindah jika direktori tersebut ada dan penulisan nama direktorinya benar . Contoh:

cd /media/galihpw/DATA/Kuliah

perintah diatas akan membuat kita berpindah ke direktori “Kuliah” yang berada di media/galihpw/DATA.

  • Menampilkan tempat direktori yang aktif

pwd

Penggunaan perintah ini cukup dengan mengetikan pwd pada terminal.

pwd

  • Menyalin file

cp file_yang_akan_disalin direktori_tujuan

  1. cp file /path/ke/direktori/sesuatu → mengkopi file tertentu ke direktori tertentu.
  2. cp -r folder /path/ke/direktori/sesuatu → mengkopi folder tertentu secara rekursif ke direktori tertentu.
  3. cp *.extension /path/ke/direktori/sesuatu → mengkopi file – file yang berekstensi tertentu ke direktori tertentu.
  4. cp nama* /path/ke/direktori/sesuatu → mengopi file – file yang namanya diawali dengan ‘nama’ ke direktori tertentu.
  • Memindahkan file

mv file_yang_akan_dipindahkan direktori_tujuan

Selain berfungsi untuk memindahkan file ke direktori lain, perintah ini juga bisa digunakan untuk mengganti nama (rename) file.

mv nama_file_lama.ehm nama_file_baru.ehm

Perintah ini memiliki cara kerja yang hampir sama dengan cp.

  • Menghapus file
  1. rm file → menghapus file.
  2. rm -r folder → menghapus folder.
  3. rm -rf folder → menghapus folder secara paksa.
  • Mencari file dalam direktori

find nama_file/folder_yang_akan_dicari

Contoh:
find CintaYangHilang.txt

Perintah diatas apabila di eksekusi akan mencari file yang bernama “CintaYangHilang.txt” pada direktori yang aktif. Apabila file ditemukan maka file dengan nama itu akan ditampilkan, tapi apabila file tidak ada maka akan muncul notifikasi bahwa file tidak ada.

Perintah Dasar dalam Pemrosesan Teks

  • Melihat isi file

cat
Perintah ini digunakan untuk menampilkan isi file kedalam bentuk palin text.
Penggunaannya adalah:

cat Galih.txt

Perintah diatas akan menampilkan file “Galih.txt” kedalam bentuk plain
text.
cat

  • Menampilkan jumlah baris, jumlah kata, dan ukuran file (dalam byte) suatu file.

wc nama_file.txt

wc

Perintah Dasar dalam Sistem Administrasi

  • Menjalankan perintah/program sebagai super user

Terkadang suatu perintah/program di dalam linux harus dijalankan dengan menggunakan super user (untuk alasan keamanan). Untuk melakukan itu sobat- sobat bisa menggunakan perintah sudo nama_perintah. Contoh:

sudo halt

Perintah diatas artinya kita menjalankan perintah “halt” sebagai super user, bukan user biasa.

  • Whoami

Perintah diatas adalah perintah untuk melihat user yang sedang aktif. Penggunaan perintah tersebut adalah dengan mengetikan langsung whoami pada terminal dan kemudian akan muncul user apa yang sedang aktif.

Perintah Dasar dalam Manajemen Pemrosesan

  • Menampilkan proses-proses yang sedang berjalan

ps aux

Untuk menampilkan proses yang sedang berjalan, dengan perintah ps juga sudah cukup. Namun apabila ingin menampilkan juga proses secara detail maka parameter aux ditambahkan. Penggunaan perintah ini cukup dengan mengetikan ps aux pada jendela terminal.

  • Mengakhiri proses yang sedang berjalan
  1. kill PID → membunuh sebuah proses yang memiliki PID tertentu
  2. kill program → membunuh sebuah proses yang memiliki nama tertentu
  3. killall program → membunuh semua proses yang memiliki nama tertentu
  • Menampilkan daftar perangakt yang ditancapkan di port USB

lsusb

lsusb

  • Membersihkan tampilan terminal

clear

Utility

  • Merestart sistem

reboot

  • Mematikan sistem

shutdown/halt

  • Menampilkan daftar hardware

lshw

catatan: perintah ini harus dijalankan sebagai super user.

  • Menampilkan lamanya sistem telah berjalan

uptime

Referensi :
Modul Praktikum Mata Kuliah Sistem Operasi 2014

Catatan :
Dilarang menyalin/mengedit/merubah tulisan ini tanpa mencantumkan alamat blog ini di referensi.

Struktur dan Status Proses Windows NT

  • Struktur Windows NT
    Sistem operasi windows NT memiliki menggunakan model struktur berlapis (layered). Dalam arsitektur ini komponen dalam sistem operasi tidak tergantung dari komponen yang lain, dengan demikian modifikasi atau perubahan dalam satu komponen tidak berpengaruh banyak pada komponen lainnya. Arsitektur Windows NT secara global terdidi dari empat lapisan yaitu:

1. Hardware abstraction layer (HAL)
2. Kernel
3. Subsystems
4. System services

Hardware Abstraction Layer (HAL), lapisan ini memetakan perintah dan tanggapan perangkat keras generik menjadi perintah dan tanggapan unik platform tertentu seperti Intel 486 atau Pentium, Motorola PowerPC, atau DEC Alpha. HAL membuat machine system bus, DMA controller, interrupt controller, system timer, dan modul memori. Sebagai mana oleh kernel HAL juga menyediakan dukungan untuk symmetric multiprocessing. Kernel, lapisan ini berisi komponen-komponen sistem operasi paling dasar. Kernel mengelola penjadwalan dan context switching, exception handling dan interrupt handling serta multiprocessing synchronization. Subsystems, lapisan ini terdiri dari berbagai ragam modul, fungsi-fungsi spesifik yang menggunakan layanan-layanan dasar yang disediakan kernel. System services, lapisan ini menyediakan antarmuka ke perangkat lunak mode pemakai.

Struktur Windows NT
Gambar Struktur Windows NT
  • Status Proses Windows NT
    Proses adalah program yang sedang dieksekusi. Secara fisik proses berisi instruksi dan data, program counter, semua nilai register pemroses, serta stack yang berisi data yang bersifat sementara (temporer) seperti data parameter-parameter rutin, alamat kirim dan variabel-variabel lokal.Beberapa istilah penting berkaitan dengan proses, antara lain :1. Multiprogramming (Multitasking)
    Multiprogramming = Manajemen banyak proses di satu pemroses.
    Salah satu sistem pemroses tunggal yang menjalankan sistem operasi multiprogramming adalah Windows NT.
    Pada multiprogramming, pemakai memandang terdapat banyak proses dijalankan bersamaan pada satu saat. Masing2 proses mendapat bagian memori dan kendali sendiri. SO mengalihkan layanan pemroses diantara proses-proses tersebut.Proses yang dijalankan pada sistem multiprogramming sebenarnya bersifat sebagai berikut :

      • Saling tidak bergantung (independent), proses sebagai terpisah dari lainnya dan tidak saling mempengaruhi.
      • Satu program pada satu saat (one program at any instant).

    Pada satu saat sesungguhnya hanya satu proses yang dilayani pemroses, menggunakan interleave (saling melanjutkan/ bersambung) , bukan overlap diantara program-program.
    Pemroses mengeksekusi satu proses tiap saat dan secara cepat beralih ke proses-proses lain secara bergiliran. Karena pengalihan dilakukan secara sangat cepat maka pengalihan tsb tidak disadari oleh pemakai sehingga menimbulkan efek paralel semu (pseudoparalelelism).

    2. Multiprocessing
    Manajemen banyak proses di komputer multiprosesor (banyak pemroses didalamnya). Dulunya multiprocessor hanya terdapat di sistem besar yaitu sistem mainframe dan minikomputer. Sekarang komputer workstation pun telah dapat dilengkapi multiprocessor yang dimaksudkan untuk peningkatan kinerja dan dapat memberikan kemampuan fault tolerant.

    Satu komputer dengan banyak pemroses dengan masing-masing pemroses melakukan pengolahan secara independen.
    Sistem Operasi Windows NT telah menyediakan dukungan multiprocessing.

    Diagram Status Proses Dasar

    Windows NT juga tidak terlepas dari 3 Status proses dasar, yaitu :

    Diagram Status Proses Dasar
    Proses dapat berada di salah satu dari tiga state dasar. Tabel berikut mendaftarkan state-state dasar yang dialami proses :

    diagram state

    Mikrokernel

    Mikrokernel adalah inti sistem operasi yang menyediakan landasan perluasan sistem operasi. Pendakatan mikrokernel dipopulerkan sistem operasi Mach. Secara teoritis, pendekatan mikrokernel menyediakan derajat fleksibilitas dan modular tinggi. Sistem operasi yang memakai pendekatan mikrokernel adalah Windows NT.

    Landasan pendekatan mikrokernel adalah hanya fungsi-fungsi sistem operasi inti yang secara mutlak esensi yang harus berada di kernel. Layanan-layanan dan aplikasi-aplikasi yang kurang esensi dibangun di atas mikrokernel itu.
    Meskipun pembagian antara mana yang perlu dan tidak, mikrokernel beragam. Terdapat ciri yang sama yaitu banyak layanan yang secara tradisional merupakan bagian sistem operasi menjadi subsistem eksternal. Subsistem ini berinteraksi dengan kernel dan subsistem-subsistem lain. Layanan-layanan itu antara lain sistem file, sistem windowing dan layanan-layanan keamanan.
    Komponen-komponen sistem operasi diluar mikrokernel saling berinteraksi melalui pesan yang dilewatkan melalui mikrokernel. Fungsi mikrokernel adalah sebagai mediator pertukaran pesan. Mikrokernel memvalidasi pesan, melewatkan pesan antara komponen-komponen dan memberi hak pengaksesan perangkat keras.
    Struktur ini ideal untuk lingkungan pemrosesan terdistribusi karena mikrokernel dapat melewatkan pesan baik secara lokal atau jarak jauh tanpa perubahan komponen-komponen sistem operasi yang lain.

Sumber :
http://arka-tkj.blogspot.com/2014/10/arsitektur-dasar-windows-nt.html
https://aristysaputri3.wordpress.com/sistem-operasi/manajemen-proses/

Programmed I/O, Interrupt Driven I/O dan Direct Memory Access

  1. Programmed I/O

Pada I/O terprogram, data saling dipertukarkan antara CPU dan modul I/O. CPU mengeksekusi program yang memberikan operasi I/O kepada CPU secara langsung, seperti pemindahan data, pengiriman perintah baca maupun tulis, dan monitoring perangkat.

Kelemahan teknik ini adalah CPU akan menunggu sampai operasi I/O selesai dilakukan modul I/O sehingga akan membuang waktu, apalagi CPU lebih cepat proses operasinya. Dalam teknik ini, modul I/O tidak dapat melakukan interupsi kepada CPU terhadap proses – proses yang diinteruksikan padanya. Seluruh proses merupakan tanggung jawab CPU sampai operasi lengkap dilaksanakan.

Terdapat empat klasifikasi perintah I/O, yaitu:

  1. Perintah Control

Perintah ini digunkan untuk mengaktivasi perangkat peripheral dan memberitahukan tugas yang diperintahkan padanya.

  1. Perintah Test

Perintah ini digunakan CPU untuk menguji berbagai kondisi status modul I/O dan peripheralnya. CPU perlu mengetahui perangkat peripheralnya dalam keadaan aktif dan siap digunakan, juga untuk mengetahui operasi – operasi I/O yang dijalankan serta mendeteksi kesalahannya.

  1. Perintah Read

Perintah pada modul I/O untuk mengambil suatu paket data kemudian menaruh dalam buffer internal. Proses selanjutnya paket data dikirim melalui bus data setelah terjadi sinkronisasi data maupun kecepatan transfernya.

  1. Perintah Write

Perintah ini kebalikan dari read. CPU memerintahkan modul I/O untuk mengambil data dari bus data untuk diberikan pada perangkat peripheral tujuan data tersebut.

Dalam teknik I/O terprogram, terdapat dua macam inplementasi perintah I/O yang tertuang dalam instruksi I/O, yaitu: memory-mapped I/O dan isolated I/O.

Dalam memory-mapped I/O, terdapat ruang tunggal untuk lokasi memori dan perangkat I/O. CPU memperlakukan register status dan register data modul I/O sebagai lokasi memori dan menggunakan instruksi mesin yang sama untuk mengakses baik memori maupun perangkat I/O. Konskuensinya adalah diperlukan saluran tunggal untuk pembacaan dan saluran tunggal untuk penulisan. Keuntungan memory-mapped I/O adalah efisien dalam pemrograman, namun memakan banyak ruang memori alamat.

Dalam teknik isolated I/O, dilakukan pemisahan ruang pengalamatan bagi memori dan ruang pengalamatan bagi I/O. Dengan teknik ini diperlukan bus yang dilengkapi dengan saluran pembacaan dan penulisan memori ditambah saluran perintah output. Keuntungan isolated I/O adalah sedikitnya instruksi I/O.

1

2

  1. Interrupt Driven I/O

Teknik interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya adalah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan perintah I/O dijalankan modul I/O maka CPU akan melakukan eksekusi perintah – perintah lainnya. Apabila modul I/O telah selesai menjalankan instruksi yang diberikan padanya akan melakukan interupsi pada CPU bahwa tugasnya telah selesai.

Dalam teknik ini kendali perintah masih menjadi tanggung jawab CPU, baik pengambilan perintah dari memori maupun pelaksanaan isi perintah tersebut. Terdapat selangkah kemajuan dari teknik sebelumnya, yaitu CPU melakukan multitasking beberapa perintah sekaligus sehingga tidak ada waktu tunggu bagi CPU.

Pengolahan interupsi saat perangkat I/O telah menyelesaikan sebuah operasi I/O adalah sebagai berikut :

  1. Perangkat I/O akan mengirimkan sinyal interupsi ke CPU.
  2. CPU menyelesaikan operasi yang sedang dijalankannya kemudian merespon interupsi.
  3. CPU memeriksa interupsi tersebut, kalau valid maka CPU akan mengirimkan sinyal acknowledgment ke perangkat I/O untuk menghentikan interupsinya.
  4. CPU mempersiapkan pengontrolan transfer ke routine interupsi. Hal yang dilakukan adalah menyimpan informasi yang diperlukan untuk melanjutkan operasi yang tadi dijalankan sebelum adanya interupsi. Informasi yang diperlukan berupa:
  5. Status prosesor, berisi register yang dipanggil PSW (program status word).
  6. Lokasi intruksi berikutnya yang akan dieksekusi.
  7. Kemudian CPU akan menyimpan PC (program counter) eksekusi sebelum interupsi ke stack pengontrol bersama informasi PSW. Selanjutnya mempersiapkan PC untuk penanganan interupsi.
  8. Selanjutnya CPU memproses interupsi sempai selesai.
  9. Apabila pengolahan interupsi selasai, CPU akan memanggil kembali informasi yang telah disimpan pada stack pengontrol untuk meneruskan operasi sebelum interupsi. Terdapat bermacam teknik yang digunakan CPU dalam menangani program interupsi ini, diantaranya :
  • Multiple Interrupt Lines.
  • Software poll.
  • Daisy Chain.
  • Arbitrasi bus.

Teknik yang paling sederhana adalah menggunakan saluran interupsi berjumlah banyak (Multiple Interrupt Lines) antara CPU dan modul – modul I/O. Namun tidak praktis untuk menggunakan sejumlah saluran bus atau pin CPU ke seluruh saluran interupsi modul – modul I/O.

Flowchart proses interupsi yang simpel :

3

  1. Direct Memory Access (DMA)

Teknik yang dijelaskan sebelumnya yaitu I/O terprogram dan Interrupt-Driven I/O memiliki kelemahan, yaitu proses yang terjadi pada modul I/O masih melibatkan CPU secara langsung. Hal ini berimplikasi pada :

  • Kelajuan transfer I/O yang tergantung pada kecepatan operasi CPU.
  • Kerja CPU terganggu karena adanya interupsi secara langsung.

Bertolak dari kelemahan di atas, apalagi untuk menangani transfer data bervolume besar dikembangkan teknik yang lebih baik, dikenal dengan Direct Memory Access (DMA).

Prinsip kerja DMA adalah CPU akan mendelegasikan kerja I/O kepada DMA, CPU hanya akan terlibat pada awal proses untuk memberikan instruksi lengkap pada DMA dan akhir proses saja. Dengan demikian CPU dapat menjalankan proses lainnya tanpa banyak terganggu dengan interupsi. Blok diagram modul DMA terlihat pada gambar berikut :

4

Konfigurasi Modul DMA :

56

Dalam melaksanakan transfer data secara mandiri, DMA memerlukan pengambilalihan kontrol bus dari CPU. Untuk itu DMA akan menggunakan bus bila CPU tidak menggunakannya atau DMA memaksa CPU untuk menghentikan sementara penggunaan bus. Teknik terakhir lebih umum digunakan, sering disebut cycle-stealing, karena modul DMA mengambil alih siklus bus.

Penghentian sementara penggunaan bus bukanlah bentuk interupsi, melainkan hanyalah penghentian proses sesaat yang berimplikasi hanya pada kelambatan eksekusi CPU saja. Terdapat tiga buah konfigurasi modul DMA seperti yang terlihat pada gambar diatas.

 

Sumber :

  • William Stallings, E-book Computer Organization and Architecture 7th Edition.
  • Rizky Rachman J. M.Kom, Slide Arsitektur dan Organisasi Komputer.