Tugas 1 Jaringan Komputer

Klasifikasi Jaringan Komputer


Berdasarkan kriterianya dibagi menjadi 4 jenis, yaitu:

  1. Berdasarkan distribusi sumber informasi atau data, terbagi atas
    – Jaringan terpusat
    Jaringan ini terdiri dari komputer client dan server yang mana komputer client   berfungsi sebagai perantara untuk mengakses sumber informasi yang berasal       dari komputer server.
    – jaringan terdistribusi
    Merupakan perpaduan dari beberapa jaringan terpusat


  2. Berdasarkan jangkauan geografis
    – Jaringan LAN
    Merupakan suatu jaringan komputer yang menghubungkan suatu komputer         dengan komputer yang lain dengan jarak terbatas.
    – Jaringan MAN
    Merupakan jaringan yang mencakup satu kota besar beserta daerah setempat
    – Jaringan WAN
    Merupakan jaringan dengan cakupan luas, jaraknya antar kota, negara, dan         benua. Jaringan ini sama dengan Internet.


  3. Berdasarkan peranan dan hubungan tiap komputer dalam memproses data
    – Jaringan Client-Server
    Yaitu jaringan komputer dengan sebuah komputer yang didedikasikan khusus sebagai server. Dalam jaringan ini terdapat beberapa komputer server dan komputer client. Komputer yang menjadi komputer server maupun client akan diubah-ubah melalui software jaringan pada protokol.
    – Jaringan Peer to Peer
    pada jaringan ini tidak terdapat komputer client maupun server. Semua kopmuter dapat melakukan pengiriman atau menerima informasi sehingga semua kopmuter berfungsi sebagai server sekaligus client.


  4. Berdasarkan media transmisi data
    – Jaringan berkabel (Wired Network)
    Pada jaringan ini untuk menghubungkan komputer satu dengan komputer lain memerlukan penghubung yaitu kabel jaringan. Kabel ini berfungsi untuk mengirim informasi dalam bentuk sinyal listrik antar komputer jaringan.
    – Jaringan nirkabel (Wi-Fi)
    Merupakan jaringan dengan medium berupa gelombang elektro magnetik.


Implementasi Perkembangan Jaringan Komputer

  1. Dalam dunia Bisnis
    Implementasi jaringan komputer dalam dunia bisnis sangatlah peting, hal ini sangat membantu dalam hal mempersempit jarak antara penjual dengan costumer. Seperti e-commerce sehingga dapat dijangkau dengan mudah dan mencangkup daerah yang luas di dalam dunia maya. Manfaat lain dari implementasi jaringan komputer dalam bidang bisni yaitu: proses transaksi dapat terintegrasi dengan baik, menjaga keamanan data dan informasi, serta mempercepat pendistribusian data dan informasi dalam pengambilan keputusan.


  2. Dalam dunia Mobile
    Dengan adanya kemajuan teknologi mobile, handphone pun mengambil peran penting dalam implementasi jaringan komputer yakni: penggunaan perangkat WiFi, adanya video call dan video Streaming, dan mengakses email melalui handphone.


  3. Dalam Rumah
    Implementasi jaringan komputer di rumah  contohnya yaitu pemasangan TV Cable, RT/RW Net, dan juga Internet.  Manfaatnya agar memungkinkan efisien dan efektif dalam berkomunikasi jarak jauh dengan menggunakan chat, adanya multimedia dengan games dan video, mudah mendapatkan informasi dengan data yang cepat dengan menggunakan browsing internet.


  4. Dalam dunia Perbankan
    Mengubah strategi bisnis menjadi teknologi sebagai unsur utama baik dalam proses inovasi produk dan jasa. Seperti pelayanan electronic transaction (e-banking) melalui ATM, phone banking, dan internet banking. Jadi mengubah pelayanan transaksi yang asalnya manual menjadi pelayanan transaksi oleh teknologi. dan dapat melakukan transaksi baik online maupun cara biasa dengan berbagai macam cara antara lain dapat tarik tunai dimana saja dan kapan. ini yang sering dilakukan oleh orang-orang yaitu transaksi uang. kalau jaman dulu orang ingin mengambil uang harus mengambil di bank tapi sekarang dengan adanya kartu transaksi dapat mengambil uang secara tunai di ATM manapun tinggal gesek kartu transaksi uang lansung ditangan, atau pada saat ingin melakukan pengiriman uang kepada orang yang jaraknya berjauhan tinggal mentransfer uang dari tabungan saja.

Gambaran Implementasi Jaringan Komputer Terhadap Teknologi Sekarang

Penggunaan Jaringan Komputer di Rumah
Penggunaan Jaringan Komputer di bidang bisnis
Penggunaan Jaringan Komputer untuk Mobile

Sumber :

http://rky3prince.blogspot.co.id/2011/02/implementasi-jaringan-komputer.html

http://4.bp.blogspot.com/_v9XV7pMwYgU/TN-cfuC8DGI/AAAAAAAAABs/HgFr59tLfuY/s400/wireless_network01.png

http://www.softwarekospin.com/files/infra1.jpg

https://webywebyweby.files.wordpress.com/2012/07/saibun-network1.jpg

Basic Command Linux dan Manajemen Proses

Basic Command LINUX

LINUX

Merupakan sistem operasi yang dikembangkan oleh Linus Benedict Trovalds dari Universitas Helsinki Finlandia sebagai proyek hobi mulai tahun 1991. Linux merupakan clone dari UNIX yang telah di-port ke beragam platfrom. Sistem operasi ini tergolong open source dan dikembangkan oleh GNU (General Public License). Linux dapat digunakan untuk berbagai macam keperluan, seperti: jaringan, pengembangan software, dan sebagai end-user platform.

Macam-macam distribusi linux anatra lain: Stackware, Debian, RedHat, S.u.s.e., Caldera, ataupun Turbo Linux.

UNIX

Unix adalah kumpulan program yang berperan sebagai penghubung antara komputer dan user. Unix dikembangkan pada tahun 1969 oleh group dari pekerja AT & T di Bell Laboratory, di dalam pengembangan itu terlibat juga Ken Thompson, Dennis Ritchie, Douglas Mcllroy, dan Joe Ossanna. Unix yang tersedia di pasaran terdiri dari beberapa macam contohnya Solaris, AIX, dan BSD.

Terdapat 4 komponen dasar dari UNIX antara lain:

  1. Kernel, jantung dan bagian inti dari sistem operasi.
  2. Shell, fasilitas yang memproses request kita kepada sistem operasi.
  3. Command and Utulities, perintah dan fasilitas untuk keperluan sehari-hari dalam penggunaan komputer.
  4. Files and Directories, pengelolaan data menjadi sebuah file, dan mengelola file ke dalam sebuah direktori.

Terminal/Console

Perintah-perintah user yang digunakan untuk berinteraksi dengan sistem operasi pada Linux dihubungkan melalui Terminal/Console. Untuk membuka jendela Terminal ada beberapa cara:

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

Perintah Dasar Penanganan File

  1. Membuka direktori (mkdir <nama folder>)
  2. Menampilkan isi direktori (is)
  3. Berpindah direktori (cd <direktori tujuan>)
  4. Menampilkan tempat direktori yang akrif (pwd)
  5. Menyalin file (cp <file yang akan disalin> <direktori tujuan>)
  6. Memindahkan file (mv <file yang akan dipindahkan> <direktori tujuan>))
  7. Menghapus file (rm file)
  8. Mencari file dalam direktori (find <nama file yang akan dicari>)

Perintah Dasar Dalam Pemrosesan Teks

  1. Melihat file (cat <nama file>)
  2. Menampilkan jumlah baris, jumlah kata, dan ukuran file (wc <nama file>)

Perintah Dasar Dalam Sistem Administrasi

  1. Menjalankan perintah/program sebagai super user (sudo <nama perintah>)
  2. Whoami (whoami)

Perintah Dasar Dalam Manajemen Pemrosesan

  1. Menampilkan proses-proses yang sedang berjalan (ps aux)
  2. Mengakhiri proses yang sedang berjalan (kill PID)
  3. Menampilkan daftar perangkat yang tertancap di port USB (Isusb)
  4. Membersihkan tampilan terminal (clear)
  5. Merestart sistem (reboot)
  6. Mematikan sistem (shutdown/halt)
  7. Menampilkan daftar hardware (Ishw)
  8. Menampilkan lamanya sistem telah berjalan (uptime)
  9. Kalkulator di dalam terminal (bc)

Manajemen Proses

Manajemen Proses

Proses merupakan program yang sedang dijalankan. Proses dapat diciptakan dan dapat pula dimusnahkan atau dimatikan.

Saat sistem operasi Linux pertama kali dijalankan maka pada saat itu juga proses bertanggung jawab untuk membuat kernel diciptakan dan muncullah proses yang pertama yaitu init. Setiap proses yang terdapat di Linux memiliki PID atau Process ID yang digunakan untuk berinteraksi dengan proses yang bersangkutan.

Konsep Dasar Manajemen Proses

Ada 4 konsep dasar, diantaranya:

  1. Multiprogramming
    Teknik penjadwalan tugas yang sedang berlangsung sambil menunggu respon dari luar (external event).
  2. Pseudoparallelism
    Eksekusi proses secara paralel pada sistem.
  3. Multiprocessing
    Kemampuan komputer untuk melakukan banyak proses dalam satu waktu atau secara serentak.
  4. Distributed Processing
    Pengolahan data yang dilakukan bersamaan antara komputer pusat dengan beberapa komputer yang lebih kecil dan saling berkomunikasi.

Model pada Proes

Beberapa bentuk pemodelan pada proses:

  • Sequential proses
  • Multiprogramming
  • CPU Switching

Operasi pada Proses

Terdapat beberapa macam jenis operasi pada proses, yaitu:

  1. Penciptaan proses
  2. Penghancuran proses
  3. Penundaan proses
  4. Pelanjutan kembali proses
  5. Mem-block proses
  6. Membangun proses
  7. Menjadwalkan proses
  8. Komunikasi antar proses

Perintah-perintah  Proses di Linux

Linux dikenal banyak memiliki perintah-perintah untuk berinteraksi dengan dengan proses yang ada di dalamnya. Mulai dari kondisi proses, elemen-elemen, proses yang sedang berjalan, proses induk dan anak, dan lain-lain. Berikut ini adalah penjabaran singkat mengenai perintah-perintah di Linux:

  1. Instruksi ps (proses status), digunakan untuk melihat kondisi proses yang ada. Perintah yang digunakan adalah $ ps.
  2. Instruksi untuk melihat elemen-elemen yang digunakan pada proses. Perintah yang digunakan adalah $ ps u.
  3. Instruksi untuk mencari proses yang spesifik untuk pengguna. Perintah yang digunakan adalah $ ps –u <user>.
  4. Instruksi untuk proses lainnya dengan menggunakan opsi $ ps -a, $ ps -au dan $ ps -aux.
  5. Instruksi untuk melihat proses yang sedang berjalan yaitu $ top dan $ htop. Pada instruksi $ htop pengguna dapat mencari, melihat prioritas, menghentikan, dan mengurutkan proses yang sedang berjalan.
  6. Instruksi untuk menampilkan hubungan parent dan child dengan menggunkan perintah $ ps –eh atau $ ps –eF.
  7. Instruksi untuk menampilkan semua proses pada sistem dalam bentuk hirarki parent/child dengan menggunakan instruksi $pstree.
  8. Instruksi untuk menghentikan proses, diantaranya:
  • $ kill %<nomor job>, menghentikan proses berdasarkan penggunaan CPU dalam persen.
  • $ kill <PID>, menghentikan proses berdasarkan PID.
  • $ kill <nama proses>, menghentikan proses berdasarkan nama proses.
  • $ killall <nama proses>, menghentikan semua proses berdasarkan nama proses.
  1. Instruksi untuk mengubah prioritas proses dengan menggunakan $ renice <prioritas> <PID>.

Sumber :

  • Modul praktikum mata kuliah Sistem Operasi UPI 2015

Implementasi Interprocess Communication pada Windows 2000

Interprocces Comunication (IPC)

Interprocces Comunication (IPC) adalah mekanisme yang digunakan oleh program dan proses multi-user. IPC memungkinkan bersamaan menjalankan tugas untuk berkomunikasi di antara mereka pada komputer lokal atau antara komputer lokal dan komputer remote.

Mekanisme IPC digunakan untuk mendukung proses didistribusikan. Aplikasi yang membagi proses antara jaringan komputer disebut aplikasi terdistribusi. Bagian split aplikasi terdistribusi dapat terletak pada mesin yang sama atau pada mesin yang terpisah. Sebuah aplikasi client / server menggunakan didistribusikan pengolahan, di mana pengolahan dibagi antara workstation (klien) dan server yang lebih kuat. Bagian klien kadang-kadang disebut sebagai front end dan bagian server disebut sebagai back-end. Bagian klien aplikasi client / server dapat terdiri dari hanya user interface untuk aplikasi. Namun, aplikasi dapat dibagi di berbagai tempat dalam aplikasi terdistribusi. Ini berjalan pada workstation klien dan mengambil jumlah yang lebih rendah dari kekuatan pemrosesan. Sebagai contoh, bagian klien mungkin hanya menangani grafis layar, gerakan mouse, dan penekanan tombol.

Sistem Penyampaian Pesan

Fungsi dari sebuah sistem pesan adalah untuk memperbolehkan komunikasi satu dengan yang lain tanpa perlu menggunakan pembagian data. Sebuah fasilitas IPC menyediakan paling sedikit 2 operasi yaitu kirim (pesan) dan terima (pesan). Pesan dikirim dengan sebuah proses yang dapat dilakukan pada ukuran pasti atau variabel. Jika hanya pesan dengan ukuran pasti dapat dikirimkan, level sistem implementasi adalah sistem yang sederhana. Pesan berukuran variabel menyediakan sistem implementasi level yang lebih kompleks.

Jika dua buah proses ingin berkomonikasi, misalnya proses P dan proses Q, mereka harus mengirim pesan atau menirima pesan dari satu ke yang lainnya. Jalur ini dapat diimplentasikan dengan banyak cara, namun kita hanya akan memfokuskan pada implementasi logiknya saja, bukan implementasi fisik(seperti shared memory, hardware bus, atau jaringan).Berikut ini ada beberapa metode untuk mengimplementasikan sebuah jaringan dan operasi pengiriman / penerimaan secara logika :

  1. Komunikasi langsung atau tidak langsung.
  2. Komunikasi secara simetris / asimetris.
  3. Buffer otomatis atau eksplisit.
  4. Pengiriman berdasarkan salinan atau referensi.
  5. Pesan berukuran pasti dan variabel.

Komunikasi Langsung

Setiap proses yang ingin berkomunikasi harus memiliki nama yang bersifat eksplisit baik penerimaan atau pengirim dari komunikasi tersebut. Dalam konteks ini, pengiriman dan penerimaan pesan secara primitive dapat dijabarkan sebagai :

  1. Send (P, message) – mengirim sebuah pesan ke proses P.
  2. Receive (Q, message) – menerima sebuah pesan dari proses Q.

Sebuah jaringan komunikasi pada bahasan ini memiliki beberapa sifat, yaitu :

  1. Sebuah jaringan yang didirikan secara otomatis diantara setiap pasang dari proses yang ingin dikomunikasikan. Proses tersebut harus mengetahui identitas dari semua yang ingin dikomunikasikan.
  2. Sebuah jaringan adalah terdiri dari penggabungan 2 proses.
  3. Diantara setiap pesan dari proses terdapat tepat sebuah jaringan.

Pembahasan ini memperlihatkan sebuah cara simetris dalam pemberian alamat. Oleh karena itu, baik keduanya yaitu pengirim dan penerima proses harus memberi nama bagi yang lain untuk berkomunikasi, hanya pengirim yang memberikan nama bagi penerima sedangkan penerima tidak menyediakan nama bagi pengirim. Dalam konteks ini, pengirim dan penerima secara sederhana dapat dijabarkan sebagai :

  1. Send (P, message) – mengirim sebuah pesan kepada proses P.
  2. Receive (id, message) – menerima sebuah pesan dari semua proses. Variabel id diatur sebagai nama dari proses dengan komunikasi.

Kerugian dari kedua cara yang disebutkan diatas adalah adanya kebatasan modularitas, merubah nama proses mungkin mengharuskan kita untuk merubah semua definisi proses yang lain. Semua referensi kepada nama yang lama harus ditemukan.

Komunikasi Tidak Langsung

Dengan komunikasi tidak langsung, pesan akan dikirimkan pada dan diterima dari / melalui mailbox (Kotak Surat) atau terminal-terminal, sebuah mailbox dapat dilihat secara abstrak sebagai sebuah objek didalam setiap pesan yang dapat ditempatkan dari proses dan dari setipap pesan yang bias dipindahkan. Setiap kotak surat memiliki sebuah identifikasi (identitas) yang unik, sebuah proses dapat berkomunikasi dengan beberapa proses lain melalui sebuah nomor dari mailbox yang berbeda. Dua proses dapat saling berkomunikasi apabila kedua proses tersebut sharing mailbox. Pengirim dan penerima dapat dijabarkan sebagai :

  1. Send (A, message) – mengirim pesan ke mailbox A.
  2. Receive (A, message) – menerima pesan dari mailbox A.

Dalam masalah ini, link komunikasi mempunyai sifat sebagai berikut :

  1. Sebuah link dibangun diantara sepasang proses dimana kedua proses tersebut membagi mailbox.
  2. Sebuah link mungkin dapat berasosiasi dengan lebih dari 2 proses.
  3. Diantara setiap pasang proses komunikasi, mungkin terdapat link yang berbeda-beda, dimana setiap link berhubungan pada satu mailbox.

Misalkan terdapat proses P1, P2 dan P3 yang semuanya share mailbox. Proses P1 mengirim pesan ke A, ketika P2 dan P3 masing-masing mengeksekusi sebuah kiriman dari A. Proses mana yang akan menerima pesan yang dikirim P1?. Jawabannya tergantung dari jalur yang kita pilih :

  1. Mengijinkan sebuah link berasosiasi dengan paling banyak 2 proses.
  2. Mengijinkan paling banyak 1 proses pada suatu waktu untuk mengeksekusi hasil kiriman (receive operation).
  3. Mengijinkan sistem untuk memilih secara mutlak proses mana yang akan menerima pesan (apakah itu P2 atau P3 tetapi tidak keduanya, tidak akan menerima pesan). Sistem mungkin mengidentifikasi penerima kepada pengirim.

Sinkronisasi

Komunikasi antara proses membutuhkan place by calls untuk mengirim dan menerima data primitive. Terdapat design yang berbeda-beda dalam implementasi setiap primitive. Pengiriman pesan mungkin dapat diblok (blocking) atau tidak dapat dibloking (nonblocking) – juga dikenal dengan nama sinkron atau asinkron.

  1. Pengiriman yang diblok : Proses pengiriman di blok sampai pesan diterima oleh proses penerima (receiving process) atau oleh mailbox.
  2. Pengiriman yang tidak diblok : Proses pengiriman pesan dan mengkalkulasi operasi.
  3. Penerimaan yang diblok : Penerima mem blok samapai pesan tersedia.
  4. Penerimaan yang tidak diblok : Penerima mengembalikan pesan valid atau null.

Buffering

Baik komunikasi itu langsung atau tak langsung, penukaran pesan oleh proses memerlukan antrian sementara. Pada dasarnya, terdapat tiga jalan dimana antrian tersebut diimplementasikan :

  1. Kapasitas nol: antrian mempunyai panjang maksimum 0, maka link tidak dapat mempunyai penungguan pesan (message waiting). Dalam kasus ini, pengirim harus memblok sampai penerima menerima pesan.
  2. Kapasitas terbatas: antrian mempunyai panjang yang telah ditentukan, paling banyak n pesan dapat dimasukkan. Jika antrian tidak penuh ketika pesan dikirimkan, pesan yang baru akan menimpa, dan pengirim pengirim dapat melanjutkan eksekusi tanpa menunggu. Link mempunyai kapasitas terbatas. Jika link penuh, pengirim harus memblok sampai terdapat ruang pada antrian.
  3. Kapasitas tak terbatas: antrian mempunyai panjang yang tak terhingga, maka, semua pesan dapat menunggu disini. Pengirim tidak akan pernah di blok.

Implementasi Interprocess Communication dalam sistem operasi Windows 2000
            Common Internet File System adalah cara standar pada komputer untuk berbagi file di intranet pada perusahaan, dan Internet. CIFS adalah protokol file sharing asli di Windows 2000.

CIFS mendefinisikan serangkaian perintah yang digunakan untuk menyampaikan informasi antar jaringan komputer. Redirector packages requests bertujuan untuk meremote komputer dalam struktur CIFS. CIFS dapat dikirim melalui jaringan ke perangkat remote. Redirector juga menggunakan CIFS untuk membuat permintaan ke protokol computer secara lokal. Pesan CIFS dapat secara luas diklasifikasikan sebagai berikut:

  1. Connection establishment messages terdiri dari perintah yang memulai dan mengakhiri sambungan redirector ke sumber daya bersama pada server.
  2. Name space and File Manipulation messages yang digunakan oleh redirector untuk mendapatkan akses ke file pada server dan untuk membaca dan menulis mereka.
  3. Printer messages digunakan oleh redirector untuk mengirim data ke antrian cetak pada printer di server dan untuk mendapatkan informasi status tentang antrian cetak pada printer.
  4. Miscellaneous messages digunakan oleh redirector untuk menulis ke Mailslots dan bernama pipes.

Anggota Kelompok:

  • Abdul Aziz Priatna (1307123)
  • Harvi Gusnanda (1301780)
  • Hazmi Ramadhan Adli (1301478)
  • Irfan Haydar Rachman (1301919)

Referensi :

http://opensource.telkomspeedy.com/repo/abba/v06/Kuliah/SistemOperasi/2003/43/produk/SistemOperasi.html

https://technet.microsoft.com/en-us/library/cc961387.aspx#mainSection

Review Struktur SO GARUDA dan Status Proses SO

Jika dibandingkan dengan Microsoft Windows atau Mac OS, sistem operasi Garuda memang belum apa-apanya, namun setidaknya Garuda OS ini dapat berfungsi baik dan tidak terlalu buruk tampilan serta fitur-fiturnya. Sistem operasi Garuda merupakan Distro Linux yang berbasis PCLinuxOS Fullmonty Edition, seperti yang telah dijelaskan OS ini adalah buatan dari pengembang Indonesia. Ada beberapa fitur yang bisa Anda dapatkan pada sistem operasi Garuda, di antaranya adalah mendukung penggunaan dokumen format SNI (Standar Nasional Indonesia), aman dari gangguan virus komputer, stabilitasnya cukup tinggi, ditambah dengan dukungan bahasa Indonesia serta dilengkapi dengan banyak macam program-program dari berbagai kategori.

Berikut ini adalah beberapa fitur-fitur yang bisa Anda dapatkan jika menggunakan sistem operasi Garuda:

  1. Terdapat inti (kernel) pada sistem operasi : 2.6.38.7. Dengan fitur ini maka OS dapat melayani bermacam program aplikasi untuk mengakses ke perangkat keras komputer dengan aman.
  2. Mendukung desktop : KDE 4.6.3
  3. Mendukung dengan berbagai macam Video Graphics Array VGA, baik dari produsen Nvidia, ati, Intel, dan lain-lain.
  4. Mendukung penggunaan Wireless (Nirkabel) untuk berbagai perangkat jaringan.
  5. Mendukung dengan perangkat berbagai macam printer lokal maupun jaringan
  6. Mendukung banyak format populer dari kategori multimedia. Seperti pada sistem operasi lain, Garuda juga dapat menjalankan format multimedia seperti flv, mp4, mp3, mpg, wav, wrna, avi, ogg, dan lain-lain.
  7. Mendukung bahasa indonesia, Inggris, Jepang, India, Korea, Cina, Arab dan puluhan bahasa dari negara lain.
  8. Mendukung proses instalasi berbagai macam program yang berbasis untuk Windows.
  9. Mendukung Font Aksara daerah.
  10. Mendukung untuk instalasi berbagai game yang berbasis Windows, baik game online maupun offline.
  11. Mendukung Font Google Web.
  12. Mendukung untuk menjalankan berbagai macam software dokumen dari program populer yang berbasis Windows, diantaranya adalah Photoshop, CorelDraw, Microsoft Office, AutoCAD, dan lain-lain.

Struktur Linux pada umumnya

Struktur yang mendasar dari berbagai system operasi yaitu antara lain :

  1. Monolitik System
  2. System berlapis / Layers
  3. System mesin maya
  4. System yang berorientasi objek
  5. System Server / Client
  6. STRUKTUR SISTEM LINUX

Dalam System operasinya. Linux mempunyai struktur system file, yang bisa dinamakan directory.
System filenya dimulai dengan Root dengan Symbol “/”. Dan pengertian directory sendiri yaitu file khusus yang berisikan nama file.

Berikut ini contoh gambar struktur directory pada Linux

linux-file-structure

Dimulai dari Posisi bagian atas ;

  1. ROOT: Merupakan Directory yang membentuk Basic System File
  2. BIN: Yang Memuatkan berupa program arahan sebagaian dari System operasi Linux
  3. BOOT: Yang memuatkan Kernel Linux dan File yan diperlukan
  4. ETC: Semua System mengkonfigurasi file dan Skrip instalasi
  5. USR: Yang memuatkan Subdirectory agar bisa berbagi program seperti System X di Windows
  6. VAR: Memuat berbagai File System seperti pada log , Print dll
  7. SBIN: Memuat berisikan File administrasi yang dapat di akses

Struktur System Operasi pada Linux itu sendiri ada 3 bagian, yaitu ;

  1. Kernel  : Inti dari sistem operasi, menyediakan semua fungsi yg diperlukan untuk menjalankan proses dan menyediakan layanan sistem untuk memberikan pengaturan dan proteksi akses ke sumber daya hardware termasuk pada memori virtual.explore_linux_kernel
  2. System Libraries : menentukan fungsi standar dimana aplikasi dapat berinteraksi dengan kernel dan mengimplementasikan hamoir semua fungsi sistem operasi yang tidak memerlukan hak penuh atas kernel.
    Linux Kernel Structure
  3. System Utilities : merupakan program yang yg melakukan pekerjaan manajemen secara individual, utilitas sistem termasuk semua program yang diperlukan untuk menginisialisasi sistem, seperti program untuk konfigurasi alat jaringan untuk load modul kernel.
    komponen linux

Status Proses yang dikenali dalam Linux

  1. Task Running : Proses yang siap untuk dieksekusi CPU
  2. Task Interruptable : Proses yang menunggu sebuah kondisi. Interupsi, Sinyal dan aktifitas lain akan membangunkan proses.
  3. Task Uninterruptable : Proses yang sedang sleep, dan tidak dapat di interrupt oleh signal.
  4. Task Stopped : Proses yang dihentikan
  5. Task Zombie : Proses telah berhenti, namun masih memiliki struktur data ditask_struct di task vektor dan masih memegang sumber daya yang tidak digunakan lagi.

Konsep Pembuatan dan Penghentian Proses

Konsep pembuatan proses pada sistem operasi linux :

  • Setiap proses diberi nomor khusus sebagai identifikasi yang disebut process identification atau PID berupa angka integer unik.
  • Jika proses selesai (Terminated) maka semua sumber daya yang digunakan termasuk PID dibebaskan kembali.
  • Proses dibuat menggunakan system call fork() yang sering disebut forking proses
  • System call fork() mengkopi proses pemanggil sehingga akan terdapat 2 proses yaitu :
  1. Proses pemanggil disebut PARENT
  2. Proses hasil kopian disebut CHILD
  • Proses CHILD identik dengan proses PARENT-nya tetapi memiliki PID yang berbeda.
  • Setelah proses baru (child) berhasil dibuat eksekusi dilanjutkan secara normal di masing –masing proses pada aris setelah pemanggilan system call fork().
  • Proses pemanggil (PARENT) dapat melakukan forking proses lebih dari satu kali sehingga memungkinkan terdapat banyak proses CHILD yang dieksekusi.
  • Proses CHILD dapat melakukan forking proses seperti halnya PARENT sehingga dapat terbentuk struktur pohon proses.

Sedangkan pada proses penghentian pada OS linux, jika telah menyelesaikan pernyataan terakhir, dan meminta pada sistem operasi untuk menghapusnya dengan menggunakan system call exit. Proses mengembalikan semua data (output) ke parent proses melalui system call wait. Kemudian proses dihapus dari list atau tabel sistem, dilanjutkan dengan menghapus PCB.

Penghapusan proses ini akan menjadi sangat kompleks jika ternyata proses yang akan dihentikan tersebut membuat proses-proses yang lain. Pada beberapa sistem, proses-proses anak akan dihentikan secara otomatis jika proses induknya berhenti. Namun, ada beberapa sistem yang menganggap bahwa proses anak ini terpisah dengan induknya, sehingga proses anak tidak ikut dihentikan secara otomatis pada saat proses induk dihentikan.

Parent dapat menghentikan eksekusi proses child dengan menggunakan system call abort. Proses anak dihentikan parent karena beberapa alasan, antara lain :

  1. Child mengalokasikan sumber daya melampaui batas
  2. Tugas child tidak dibutuhkan lebih lanjut
  3. Parent berhenti, karena system operasi tidak mengijinkan child untuk melanjutkan jika parent berhenti dan terminasi dilanjutkan

 

 

 

Referensi

(2012) Analisis struktur sistem Linux dan Windows jelaskan dan ilustrasikan dengan diagram dan gambar. Tersedia di : http://if-unsika-2010232.blogspot.com/2012/10/analisis-struktur-sistem-linux-dan_23.html. [Diakses 1 Maret 2015].

(2011) Struktur Sistem Linux dan Windows . Tersedia di : http://2009070-syaiful.blogspot.com/2011/10/struktur-sistem-linux-dan-windows.html. [Diakses 1 Maret 2015].

(2013) Garuda OS – Sistem Operasi Komputer Terbaru Buatan Indonesia. Tersedia di : http://portal.paseban.com/review/72692/garuda-os-sistem-operasi-komputer-terbaru-buatan-indonesia. [Diakses 1 Maret 2015].

(2011) Struktur Sistem Linux dan Windows. Tersedia di : http://2009098-if-unsika.blogspot.com/2011/10/struktur-sistem-linux-dan-windows.html. [Diakses 1 Maret 2015].

(2013) Manajemen Proses Pada Linux. Tersedia di : http://dionajie.blog.upi.edu/2013/10/manajemen-proses-pada-linux/. [Diakses 1 Maret 2015].

Programmed I / O, Interrupt & Direct Memory Access (DMA)

Programmed I / O

Ketika perangkat I/O menangani permintaan, perangkat men-set bit status di regiser status perangkat. Pemroses harus selalu memeriksa register status perangkat secara periodik dan melakukan tindakan berdasarkan status yang dibaca.

Perangkat lunak pengendali perangkat (driver) di pemroses harus mentransfer data ke/dari pengendali.

Driver harus berisi kumpulan instruksi di tiga kategori, yaitu:

  1. Pengendalian
    Instruksi pengendalian untuk mengaktifkan perangkat eksternal dan memberitahu apa yang perlu dilakukan perangkat. Contoh, unit tape magnetik diinstruksikan untuk kembali ke posisi awal, bergerak ke rekor berikutnya.
  2. Pengujian
    Instruksi pengujian untuk memeriksa kondisi status berkaitan dengan perangkat masukkan/keluaran.
  3. Pembacaan/penulisan
    Instruksi membaca/menulis untuk transfer data antara register pemroses dan perangkat eksternal.

Programed I/O (PIO) mengacu pada transfer data yang diprakarsai oleh CPU di bawah sopir kontrol perangkat lunak untuk register akses atau memori pada sebuah perangkat.

CPU mengeluarkan perintah kemudian menunggu I/O operasi akan selesai. Seperti CPU lebih cepat daripada modul I/O, masalah dengan program I/O adalah bahwa CPU harus menunggu dengan waktu yang lama untuk I/O modul siap baik untuk penerimaan atau transmisi data. CPU, sambil menunggu, berulang kali harus memeriksa status modul I/O, dan proses ini dikenal sebagai Polling. Akibatnya, tingkat kinerja seluruh sistem rusak parah.

Programed I/O pada dasarnya bekerja dengan cara ini:

  1. Permintaan CPU I/O operasi
  2. I/O modul melakukan operasi
  3. I/O modul menetapkan status bit
  4. CPU memeriksa Status bit secara berkala
  5. I/O modul tidak memberitahu CPU secara langsung
  6. I/O modul tidak mengganggu CPU
  7. CPU mungkin menunggu atau kembali lagi nanti

Kelemahan

Cara ini sangat tidak efisien karena banyak pemborosan waktu pemroses untuk menunggui kejadian perangkat keras dan/atau menunggui selesainya operasi yang dilakukan perangkat masukkan/keluaran.

Interrupt

Isu-isu CPU memberi perintah ke modul I/O kemudian hasil kerja normal sampai terganggu oleh perangkat I/O pada saat penyelesaian pekerjaannya.

Untuk masukan, perangkat mengganggu CPU ketika data baru telah tiba dan siap untuk diambil oleh prosesor sistem. Tindakan yang sebenarnya untuk melakukan tergantung pada apakah perangkat menggunakan I/O port, pemetaan memori.

Untuk output, perangkat memberikan interupsi baik bila siap untuk menerima data baru atau untuk mengakui transfer data yang berhasil. Perangkat memori-dipetakan dan DMA-mampu biasanya menghasilkan interupsi untuk memberitahu sistem mereka dilakukan dengan buffer.

Meskipun Interrupt sifatnya mengurangi CPU harus menunggu perangkat, tetapi masih tidak efisien pada transfer data dalam jumlah besar karena CPU harus mentransfer data kata per kata antara I/O modul dan memori.

Di bawah ini adalah operasi dasar Interrupt:

  1. Masalah CPU membaca perintah
  2. I/O modul mendapat data dari perangkat sementara CPU melakukan pekerjaan lain
  3. I/O modul menginterupsi CPU
  4. Permintaan CPU Data
  5. I/O transfer data modul

Keunggulan

Pemroses tidak disibukkan menunggui dan menjagai seluruh operasi perangkat masukkan/keluaran untuk memeriksa status perangkat. Kinerja lebih baik dibandingkan dengan teknik masukkan/keluaran terprogram.

Direct Memory Access (DMA)

Direct Memory Access (DMA) berarti hibah CPU I/O otoritas modul untuk membaca dari atau menulis ke memori tanpa keterlibatan. Modul DMA mengontrol pertukaran data antara memori utama dan I/O device. Karena perangkat DMA dapat mentransfer data secara langsung ke dan dari memori, daripada menggunakan CPU sebagai perantara, dan dengan demikian dapat mengurangi kemacetan di bus. CPU hanya terlibat di awal dan akhir transfer dan terputus setelah seluruh blok ditransfer.

Direct Memory Access membutuhkan hardware khusus yang disebut DMA controller (DMAC) yang mengelola transfer data dan mengadili akses ke sistem bus. Kontroler diprogram dengan sumber dan tujuan pointer (di mana untuk membaca / menulis data), counter untuk melacak jumlah byte yang ditransfer, dan pengaturan, termasuk I/O dan memori jenis, interupsi dan menyatakan untuk siklus CPU.

Saat pemroses ingin membaca atau menulis data, pemroses memerintahkan DMA Controller dengan mengirim informasi berikut:

  • Perintah penulisan/pembacaan
  • Alamat perangakat masukkan/keluaran
  • Awal lokasi memori yang ditulis/dibaca
  • Jumlah word(byte) yang ditulis/dibaca

DMA meningkatkan sistem ketepatan dengan memungkinkan CPU untuk melakukan tugas-tugas sementara transfer sistem DMA data melalui sistem dan memori bus. Desain hardware rumit karena DMA controller harus diintegrasikan ke dalam sistem, dan sistem harus memungkinkan DMA controller untuk menjadi master bus. Siklus mencuri juga mungkin diperlukan untuk memungkinkan CPU dan DMA controller untuk berbagi penggunaan bus memory.

Keunggulan

  1. Penghematan waktu pemroses
  2. Peningkatan kinerja masukkan/keluaran

Referensi :

  1. http://www.louiewong.com/archives/137
  2. http://faculty.washington.edu/lcrum/Archives/TCSS372AF06/Slides11_01.ppt
  3. Bambang Hariyanto, Sistem Operasi terbitan Informatika.