Rabu, 07 Maret 2018

MATERI PERTEMUAN 4 (scheduling lanjutan)


Nama               : Afani Agung Nugroho
Nim                 : 1605551005
Mata Kuliah    : Network Operating System
Dosen              : I Putu Agus Eka Pratama ST.,MT.
Kampus           : Program Studi Teknologi Informasi, Fakultas Teknik, Universitas Udayana

Kali ini akan dibahas pemahaman teori mengenai Algoritma pada Scheduling.

Algoritma Scheduling (lanjutan)
1.  Shortest Process Next (SPN) akan mengecek processing time (waktu pemrosesan/waktu eksekusi) setiap job, yang terpendek dimasukkan ke urutan antrian (queue) terdepan, yang terpanjang paling belakang.

2. Feedback. fokusnya bukan pada waktu eksekusinya, tapi pada berapa lama waktu yang dihabiskan untuk melakukan eksekusi. Job akan masuk ke sejumlah antrian (queue) dengan memfokuskan kepada berapa lama waktu yang dihabiskan sampai melebihi waktu, selanjutnya lepaskan (release) sampai semua proses selesai.



3. Highest Response Ratio Next (HRRN), pilih job yang nilai Response Time-nya terbesar (R).  Nilai R diperoleh dengan rumus (w+s)/s (di mana w =  waiting time = waktu tunggu processor, s = service time)

4. Shortest Remaining Time (SRT) akan memilih yang waktu tunggunya lebih pendek, lalu job yang masuk ke dalam queue memiliki waktu tunggu kurang dari job yang sedang diproses .SRT dengan job yang waktu tunggunya lama dapat menimbulkan starvation (kelaparan?) karena waktu tunggu terlalu lama maka akan mati.

Penjadwalan dan NOS
Berikut ini merupakan peran penjadwalan (Schedulling) pada NOS secara spesifk.
1.  Membantu penjadwalan dari semua service yang ada di dalam server
2.  Memanfaatkan cron, dapat menentukan penjadwalan terhadap suatu proses
3.  Dikaitkan dengan log dan cron, dapat membantu system administrator di dalam memperoleh data dan informasi mengenai sistem pada server (melalui bantuan sistem operasi).

Praktik Mandiri (Melihat Log Sistem)

Berikut merupakan proses yang terjadi pada Log Sistem. Ketik perintah pada terminal nano /var/log/syslog pada OS Linux.

Berikut merupakan list dari semua file yang dilihat dengan menggunakan perintah cd/ /var/log, lalu ketik ls -la.



Referensi

[1] I Putu Agus Eka Pratama."PPT Network Operating System Pertemuan 4". 2018


Rabu, 28 Februari 2018

MATERI PERTEMUAN 3 (Scheduling)


MATERI PERTEMUAN 3 
(Scheduling)

Nama               : Afani Agung Nugroho
Nim                 : 1605551005
Mata Kuliah    : Network Operating System
Dosen              : I Putu Agus Eka Pratama ST.,MT.
Kampus           : Program Studi Teknologi Informasi, Fakultas Teknik, Universitas Udayana

Kali ini akan dibahas pemahaman teori mengenai Scheduling, Multiprogramming, Jenis-jenis Scheduling dan Algoritma pada Scheduling.

Scheduling pada Sistem Operasi
         Scheduling adalah satu atau beberapa buah aturan, mekanisme, dan prosedur di dalam sistem operasi (melibatkan kernel, aplikasi, process) terkait dengan urutan kerja yang dilakukan oleh komputer dan sistem komputer. Penjadwalan bertugas memutuskan :
  • ·     Proses yang harus berjalan
  • ·     Kapan dan selama berapa lama proses itu berjalan.
Multiprogramming
Multiprogramming merupakan kemampuan sistem operasi untuk menjalankan 2 aplikasi atau lebih secara bersama – sama, menghasilkan sejumlah proses. Multiprocessing merupakan kemampuan penanganan 2 process atau lebih secara bersama – sama. Multiprogramming dengan Multiprocessing memiliki perbedaan yaitu :
  • Multiprogramming lebih ditekankan di sisi software.
  • Multiprocessing lebih ditekankan di sisi hardware.
Peran Scheduling
Adanya penjadwalan berperan penting dalam sistem operasi. Beberapa peran tersebut adalah sebagai berikut.
  • Memaksimalkan throughput.
  • Memaksimalkan kinerja dan waktu processor.
  • Efsiensi process.
  • Keadilan (fairness) pada semua job dan aplikasi
  • Meminimalkan waktu tanggap (time respond).
  • Optimalisasi sumber daya (resource)
Jenis-jenis Scheduling
Scheduling sendiri dibagi beberapa jenis yaitu :


1.         Penjadwalan jangka Panjang (Long Term Scheduling)
Penjadwalan Jangka Panjang (Long Term) bisa diartikan sebagai suatu penambahan proses baru ke dalam sekelompok proses yang akan dieksekusi oleh computer. Penjadwalan ini terjadi ketika suatu proses yang baru diciptakan dan masih berlokasi di dalam HDD (Harddisk). Frekuensi yang dilakukan oleh penjadwalan ini juga lebih panjang dari pada medium-term schedulingnya serta apabila penjadwalan tersebut dalam menambah suatu proses membuat coarse-grained. Pada penjadwalan jangka panjang apabila makin banyak proses yang diciptakan maka kualitas tiap layanan untuk setiap proses berkurang.

2.         Penjadwalan Jangka menengah (Medium Term Scheduling)
Penjadwalan jangka menengah atau medium-term adalah suatu keputusan menambah suatu proses secara keseluruhan/sebagian ke dalam memori utama, scheduling tersebut terjadi saat swapping. Frekuensinya juga lebih sering dilakukan dari pada long-term schedulingnya.

3.         Penjadwalan jangka pendek (Short Term Scheduling)
Penjadwalan jangka pendek atau short term adalah keputusan di mana memilih salah satu proses yang akan dieksekusi diantara beberapa jumlah proses yang sudah atau telah siap dieksekusi. Scheduling ini sangat sering dilakukan dan penjadwalan tersebut juga mempunyai tugas untuk mengirimkan job (dispatcher).

4. Penjadwalan I/O (I/O Scheduling)
Penjadwalan I/O sendiri berarti memilih proses yang mana yang akan diberi kesempatan terlebih dahulu untuk menggunakan I/O device diantara beberapa proses yang akan sama-sama menggunakan device tersebut.

Algoritma Scheduling
Ada banyak sekali agoritma scheduling di dalam sisem operasi, namun akan dibahas yang terpenting saja (fundamental dan digunakan di banyak sistem operasi : windows, linux, mac, free bsd, android) .Algoritma scheduling membantu alur scheduling pada sistem serta membantu programmer di dalam pengembangan aplikasi terkait dengan sistem operasi.
1.         Round Robin
Round Robin merupakan algoritma yang menggilir proses yang ada di antrian. Proses akan mendapat jatah sebesar time quantum. Jika time quantum-nya habis atau proses sudah selesai, CPU akan dialokasikan ke proses berikutnya. Jadi,,semua proses mendapat jatah waktu yang sama dari CPU yaitu (1/n), dan tak akan menunggu lebih lama dari (n-1)q dengan q adalah lama 1 quantum.

2.         FIFO (First in First Out)
FIFO merupakan First In, First Out (Pertama Masuk, Pertama Keluar), sebuah abstraksi yang berhubungan dengan cara mengatur dan memanipulasi data relatif terhadap waktu dan prioritas, atau lebih sederhananya FIFO salah satu teknik pengelolaan queue atau penanganan tugas yang bertumpuk, yaitu item yang pertama akan dikerjakan lebih dahulu.

Kelebihan FIFO
  • Dalam kriteria efisiensi, penjadwalan FIFO sangat efisien dalam penggunaan proses.
  • Algoritmanya cukup sederhana
Kelemahan FIFO
  • Dalam kriteria adil, penjadwalan FIFO adil dalam arti resmi (dalam semantic/arti antrian) yaitu proses yang pertama datang, akan dilayani pertama juga), tapi dinyatakan tidak adil karena proses-proses yang perlu waktu lama membuat proses-proses pendek menunggu. Proses-proses tidak penting dapat membuat proses-proses penting menunggu.
  • Penjadwalan sangat tidak memuaskan karena proses menunggu lama, aktu tanggapnya sangat jelek. *Tidak cocok untuk sistem interaktif.
  • Turn around time tidak bagus.
  • Throughtput tidak bagus.
  • Tidak dapat digunakan untuk sistem waktu nyata
3.         Shortest Job First
Algoritma scheduling Shortest Job First memperbaiki kekurangan dari FIFO, dimana proses yang pendek akan didahulukan sehingga meskipun antrian panjang, proses yang pendek akan tetap didahulukan.

Referensi
[1] I Putu Agus Eka Pratama."PPT Network Operating System Pertemuan 3". 2018.


Senin, 19 Februari 2018

MATERI PERTEMUAN 2 (Process)

MATERI PERTEMUAN 2
(Process)
Nama               : Afani Agung Nugroho
Nim                 : 1605551005
Mata Kuliah    : Network Operating System
Dosen              : I Putu Agus Eka Pratama ST.,MT.

Kampus           : Program Studi Teknologi Informasi, Fakultas Teknik, Universitas Udayana

Kali ini akan dibahas pemahaman teori mengenai : Konsep dasar dan defnisi dari proses, Keadaan/status proses, Process Control Block, Manajemen proses.

Definisi Proses
Proses adalah Unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan oleh sistem operasi. Program yang sedang dalam kondisi dijalankan (eksekusi). Proses menggambarkan aktifitas yang sedang terjadi pada sistem operasi (oleh aplikasi), disertai dengan nilai dari program counter dan isi dari daftar prosesor (processor’s register). Suatu proses umumnya termasuk process stack, berisi data temporer (parameter metoda, address yang kembali, variabel lokal) dan sebuah data section, yang berisikan variabel global.

Proses Bukan Kode Program
Program bukan sebuah proses, program merupakan sebuah entitas pasif. Program memerlukan Program Counter untuk menjalankan instruksi  selanjutnya yang akan dijalankan, didukung dengan seperangkat sumber daya (resource). .Dua proses dapat dihubungkan dengan program yang sama, di mana program tersebut dianggap dua urutan eksekusi yang berbeda. Tiap-tiap proses ini adakah proses yang berbeda meski kontennya sama. Juga adalah umum untuk memiliki proses yang menghasilkan banyak proses begitu ia bekerja.

Kondisi Proses
Proses sejatinya bersifat mengubah state (kondisi awal/statis). .Setiap proses pasti memiliki status proses masing – masing.


Sumber : www.google.com



Berikut ini adalah 5 kondisi proses dalam sistem operasi :
  1. New → proses sedang dikerjakan/ dibuat.
  2. Running → instruksi sedang dikerjakan.
  3. Waiting → proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/Oatau penerimaan sebuah tanda/ signal).
  4. Ready → proses sedang menunggu untuk ditugaskan pada sebuah prosesor.
  5. Terminated → proses telah selsesai melaksanakan tugasnya/ mengeksekusi.


Process Control Block (PCB) 
Process Control Block adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif. Process Control Block (PCB) berfungsi untuk menggambarkan setiap proses pada sistem operasi, memuat informasi spesifk dari setiap proses.

Sumber : www.google.com

Berikut ini merupakan informasi yang ditampilkan pada setiap proses :
  1. Keadaan proses: Keadaan mungkin, new ,ready ,running, waiting, halted, dan juga banyak lagi.
  2. Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk ditambah code information pada kondisi apapun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
  3. Informasi manajemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasardan batas register. tabel page/ halaman, atau tabel segmen tergantung pada sistem memori yangdigunakan oleh sistem operasi.
  4. Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan bataswaktu, jumlah akun, jumlah job atau proses, dan banyak lagi.
  5. Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini,suatu daftar open file dan banyak lagi.
  6. CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer.Register tersebut termasuk accumulator, index register, stack pointer, general-puposes register.
PCB berfungsi sebagai tempat penyimpanan informasi apa pun yang bervariasi dari proses ke proses

Manajemen Proses
Sistem operasi di dalam menangani proses, dapat melakukan manajemen proses, yang meliputi 9 hal :
  1. Penciptaan proses
  2. Penghancuran/terminasi proses
  3. Penundaan proses.
  4. Melanjutkan kembali proses.
  5. Mengubah prioritas proses.
  6. Memblok proses.
  7. Membangunkan proses.
  8. Menjadwalkan proses.
  9. Memungkinkan proses berkomunikasi dengan proses lain.
Praktik Mandiri

Setelah membahas materi tentang process diatas, sekarang akan mencoba menjalankan perintah "top" pada sistem operasi Linux Ubuntu.


Perintah "top" dijalankan pada terminal. Sebelumnya saya akan membuka beberapa aplikasi yang tersedia lalu langsung jalankan perintah top. Pada gambar diatas merupakan hasil eksekusi perintah "top". Total proses yang terjadi yaitu 229, 228 sedang sleeping dan 1 sedang running.

Referensi :
[1] I Putu Agus Eka Pratama. "PPT Network Operating System". 2018



MATERI PERTEMUAN 1 (OPERATING SYSTEM)




MATERI PERTEMUAN 1
(Operating System)

Nama               : Afani Agung Nugroho
Nim                 : 1605551005
Mata Kuliah    : Network Operating System
Dosen              : I Putu Agus Eka Pratama ST.,MT.
Kampus           : Program Studi Teknologi Informasi, Fakultas Teknik, Universitas Udayana

Apa itu (OS) Operating System ? Operating system atau yang biasa di sebut Sistem Operasi merupakan salah satu perangkat lunak atau software yang bertanggung jawab mengatur atau mengontrol kerja perangkat keras atau hardware dan menjalankan aplikasi atau software didalam suatu sistem komputer. Menurut William Stalling : Sistem Operasi merupakan program komputer (software) utama yang bertindak sebagai penghubung dan tatap muka (interface) antara hardware dengan software lainnya, yang sekaligus mengontrol eksekusi program,software, dan aplikasi”

SISTEM OPERASI
 Hasil gambar untuk linux

Sumber : www.google.com

Linux adalah sebuah perangkat lunak yang berupa sistem operasi pada open source yang disebarluaskan secara gratis di bawah naungan lisensi GNU (Gnu Not Unix). Software ini merupakan turunan unix yang bekerja di berbagai jenis hardware komputer. Lisensi GNU memberikan program lengkap beserta sumber kodenya (source code).
Selain itu, GNU memberikan hak mengkopi kode sumber sebanyak mungkin bahkan mengubahnya sekalipun. Semua yang dilakukan itu legal di bawah payung lisensi. Pihak yang berkeinginan menarik biaya dalam penggandaan atau pengiriman program juga diperbolehkan oleh lisensi GNU.

 Hasil gambar untuk freebsd
Sumber : www.google.com

FreeBSD adalah salah satu system operasi yang bersifat open source. FreeBSD sebagai salah satu dari keluarga BSD, saat ini sangat banyak digunakan dan bahkan dikembangkan di berbagai kalangan individu, perusahaaan dan bahkan universitas. Bila dibandingkan dengan Windows, FreeBSD relatif lebih sulit dalam penggunaan, karena masih bersifat text base dalam memberikan command, sedangkan windows memiliki GUI yang jauh lebih dibandingkan dengan FreeBSD. Namun, terdapat juga varian BSD yang memiliki GUI, seperti PC-BSD. Keunggulan FreeBSD dibandingkan dengan Windows, adalah kebebasan dalam penggunaan, bahkan pengembangan dari system operasi tersebut, karena lisensi yang sudah dijamin untuk kebebasannya.

Struktur Software dan Hardware Komputer

Seperti yang kalian ketahui sistem komputer terbagi dalam lapisan-lapisan, maka Sistem Operasi adalah  penghubung antara lapisan hardware dan lapisan software. 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. Untuk mengetahui penghubung atau hubungan antara lapisan hardware dan software dapat dilihat pada gambar dibawah ini.

Gambar : Computer Hardware dan Software Structure

Peran Sistem Operasi
Berikut ini merupakan beberapa peranan penting dari sistem operasi.
1.         Membantu pengembangan software (IDE, debugger, editor).
2.         Eksekusi program (executable, install)
3.         Akses ke I/O Device
4.         Kontrol akses ke file dan data (privillege)
5.         Akses ke sistem (root, user)
6.         Deteksi error dan penanganannya
7.         Menghitung statistik penggunaan resource komputasi.
8.         Manajemen instruksi melalui bahasa mesin (software) dan hardware
9.       Penanganan data binari
10.    Penyediaan API (Application Programming Interface) untuk pengembangan     software.

Sistem Operasi dan Manajemen Resource



Gambar : Os dan Manajemen Resource

Berdasarkan gambar diatas Sistem operasi menangani langsung instruksi ke processor untuk langsung mengeksekusi sebuah program, mengatur waktu eksekusi (time execution), dan mengatur penjadwalan program yang akan dijalankan.

Referensi :
[1] I Putu Agus Eka Pratama. "PPT Network Operating System". 2018



Senin, 12 Desember 2016

Administrasi Server Pada Jaringan Komputer

Administrasi Server Pada Jaringan Komputer


Administrasi Server Jaringan adalah pengontrolan atau pengelolaan akses terhadap jaringan dan sumber daya yang terdapat di dalamnya. Administrasi itu sendiri merupakan suatu hal yang berhubungan dengan pengelolaan, pemberian jasa atau bantuan, dan pelayanan  dan Server merupakan suatu bagian terpenting dari sebuah jaringan yang bertugas untuk menyediakan layanan yang dibutuhkan oleh client. Server juga didukung oleh processor dan RAM yang besar juga dilengkapi dengan sistem operasi khusus yang disebut sebagai sistem operasi jaringan.
Dalam suatu administrasi server pada jaringan terdapat beberapa macam layanan atau service yang telah disediakan server menggunakan arsitektur client / server contohnya seperti berikut :

1.DNS

DNS (Domain Name System) adalah aplikasi pelayanan di internet untuk menerjemahkan nama – nama host (hostnames) menjadi alamat IP dan juga sebaliknya menerjemahkan alamat IP menjadi nama berbentuk teks yang berguna untuk memudahkan nama tersebut diingat oleh pengguna internet

2. Struktur DNS

Domain Name System merupakan hirarki pengelompokan domain berdasarkan nama, domain ditentukan berdasarkan kemampuan yang ada di struktur hirarki yang disebut level yang terdiri dari :

Root-Level Domains 
Merupakan level paling atas di hirarki yang di ekspresikan berdasarkan periode dan dilambangkan oleh .”.

Top-Level Domains 
Berisi second-level domains dan hosts yaitu :
  • com : organisasi komersial, seperti IBM (ibm.com).
  • edu  : institusi pendidikan, seperti U.C. Berkeley (berkeley.edu).
  • org  : organisasi non profit, Electronic Frontier Foundation (eff.org).
  • net  : organisasi networking, NSFNET (nsf.net).
  • gov : organisasi pemerintah non militer, NASA (nasa.gov).
  • mil  : organisasi pemerintah militer, ARMY (army.mil).
  • xx  : kode negara (id:Indonesia,au:Australia)
3. Second-Level Domains

Berisi domain lain yang disebut subdomain.
Contoh : unsri.ac.id
Second-Level Domains unsri.ac.id bisa mempunyai host www.unsri.ac.id

4. Third-Level Domains

Berisi domain lain yang merupakan subdomain dari second level domain diatasnya.
Contoh : ilkom.unsri.ac.id
Subdomain ilkom.unsri.ac.id juga mempunyai host www.ilkom.unsri.ac.id

5.Host Name

Domain name yang digunakan dengan host name akan menciptakan fully qualified domain name (FQDN) untuk setiap komputer. Contohnya, jika terdapat www.unsri.ac.idwww adalah hostname dan unsri.ac.id adalah domain name.

DNS Zone
Terdapat dua bentuk Pemetaan DNS Zone, yaitu:
  • Forward Lookup Zone  : Melakukan pemetaan dari nama menuju IP address
  • Reverse Lookup Zone  : Melakukan pemetaan dari IP address menuju nama

3. PROXY SERVER

Proxy Server adalah teknik standar utuk akses internet secara bersama-sama oleh beberapa komputer sekaligus dalam sebuah local area network (LAN) melalui sebuah modem atau sebuah salauran komunikasi. Secara sederhana, proxy adalah seseorang atau lembaga yang bertindak atas nama dari orang lain/lembaga/negara lain.

Proxy server bekerja dengan menjembatani komputer ke Internet. proxy server tersebutlah yang menghubungkan server ke server lain di internet.

4. DHCP

DHCP (Dynamic Host Configuration Protocol) adalah suatu layanan yang secara otomatis memberikan alamat IP kepada komputer yang meminta ke DHCP Server. atau Layanan yang memberikan IP secara otomatis ke semua client.

5. WEB SERVER

Web Server adalah sebuah perangkat lunak server yang berfungsi menerima permintaan HTTP atau HTTPS dari client yang dikenal dengan web browser dan mengirimkan kembali hasilnya dalam bentuk halaman-halaman web yang umumnya berbentuk dokumen HTML. Atau bisa diartikan Web Serveradalah Sistem yang menberikan layanan web dan HTML sehingga client bisa mengakses halaman website.

6. FTP SERVER

FTP Server adalah suatu server yang menjalankan software yang memberikan layanan tukar menukar file dengan selalu siap memberikan layanan FTP apabila mendapat request dari FTP client.

7. MAIL SERVER

Mail server adalah Perangkat lunak program yang mendistribusikan file atau informasi sebagai respons atas permintaan yang dikirim via email, juga digunakan pada bitnet untuk menyediakan layanan serupa FTP.

8. NTP SERVER (Network Time Protocol)

NTP Server adalah Server yang sistem waktunya disindromkan (secara bersamaan) terhadap sumber waktu yang akurat dan mentransmisikan paket informasi waktu kepada komputer lain.

9. GAME SERVER

Game server adalah tempat dimana kita bermain game secara online. Game server adalah suatu wadah bagi permainan online untuk menitipkan data permainan di suatu tempat yang besar. Kita harus memaintance game server setiap 1 minggu sekali. Hal ini berguna untuk progam yang di dalamnya bejalan dengan lancar.

10. DATABASE SERVER

Database Server adalah layanan penyimpanan database. Dalam server database tersebut, bisa berisi ratusan ataupun ribuan database dari banyak user. Biasanya database tersebut dikelompokkan atau disimpan per user yang memakai layanan database tersebut. Agar tidak terjadinya pencurian data.