Selasa, 01 Mei 2018

Network Operating System dan Cloud Computing

Nama : Oka Wisnu Mahaputra
NIM : 1605551074
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA

Network Operating System dan Cloud Computing
Jurusan Teknologi Informasi, Fakultas Teknik, Universitas Udayana
Jalan Raya Kampus Unud, Bukit Jimbaran, Bali, Indonesia


Definisi Cloud Computing
Menurut NIST (National Institute of Standart and Technology), didalam draft yang berjudul The NIST Definition of Cloud Computing, Peer Meel and Timothy Grance yang memungkinkan adanya penggunaan sumber daya (resource) secara bersama-sama dan mudah, menyediakan jaringan akses dimana-mana, dapat dikonfigurasi, dan layanan yang digunakan sesuai keperluan. 

Model dan Jenis Cloud Computing
Berdasarkan definisi NIST, Cloud Computing memiliki 4 model development dan 3 jenis layanan. berikut 4 model development, antara lain.

Screenshot_2
Model Development Cloud Computing

a. Model Legacy 
Model Legacy (komunity) adalah jenis awan hosting dimana setup yang saling dibagi antara banyak organisasi milik masyarakat tertentu, yaitu bank dan perusahaan perdagangan. Ini adalah setup multi-tenant yang dibagi di antara beberapa organisasi yang tergabung kelompok tertentu yang memiliki kekhawatiran komputasi yang sama.

b. Model Private
Model Private merupakan platform untuk komputasi awam yang diterapkan pada lingkngan yang aman berbasis cloud yang dijaga oleh firewall yang berada dibawah pemerintahan departemen IT yang dimiliki oleh perusahaan tertentu saja. 

c. Model Hybrid 
Model Hybrid merupakan jenis komputasi awan, yang terintegrasi. Hal ini dapat menjadi pengaturan dua atau lebih server cloud, yaitu swasta, awan publik, atau masyarakat yang terkait bersama - sama tapi tetap entitas individu. Manfaat dari model penyebaran beberapa tersedia dalam hosting hybrid cloud. Organisasi dapat menggunakan model cloud hibrida untuk pengolahan data besar. Pada awan swasta, dapat mempertahankan penjualan, bisnis, dan berbagai data dan dapat melakukan query analisis atas awan publik sebagai awan publik yang efektif untuk memenuhi lonjakan permintaan.

d, Model Public
Model Public merupakan jenis awan hosting dimana layanan cloud yang disampaikan melalui jaringan yang terbuka untuk penggunaan umum. Model ini benar representasi dari awan hosting, dalam hal ini penyedia layanan menyediakan jasa dan infrastruktur untuk berbagai clien. Awan pun cocok untuk kebutuhan bisnis yang membutuhkan pengelolaan beban;host aplikasi yang SaaS berbasis dan mengelola aplikasi yang banyak pengguna mengkonsumsi.

Berikut jenis Cloud Computing antara lain.
a. Software as a Service (SaaS)
Model ini memberikan user sebuah aplikasi bisnis yang diakses melalui web. Umumnya user melakukan sewa aplikasi sehingga dapat mengakses fitur-fitur yang ada, user dapat membayar biaya tambahan untuk mengakses kapasitas/fitur yang lebih banyak.

b. Platform as a Service (PaaS)
Platform as a Service (PaaS) adalah layanan dari cloud computig dimana kita menyewa rumah berikut lingkungannya (sistem operasi, network, database engine, framework aplikasi dll), untuk menjalankan aplikasi yang kita buat. Disini konsumen diberikan sebuah platform untuk mengembangkan sampai implementasi sistem. Konsumen harus membuat dan mengimplementasi sistemnya sendiri. Keuntungan dari PaaS bagi pengembang dapat fokus pada aplikasi yang sedang dikembangkan tanpa harus memikirkan rumah untuk aplikasi, dikarenakan hal tersebut sudah menjadi tanggung jawab cloud provider. 

c. Infrastructure as a Service (IaaS)
IaaS adalah layanan dari cloud computing dimana kita bisa menyewa infrastruktur IT (unit komputasi, storage, memory, network, dll). Dapat didefinisikan beberapa besar unit computasi (CPU), penyimpanan data (storege), memory (RAM), bandwidth dan konfigurasi lainnya yang akan disewa. 

3. Mengapa Menggunakan Cloud Computing
Cloud Computing memiliki manfaat antara lain.
a. Keamanan
b. Kehandalan
c. Hemat
d. Mudah digunakan dan mudah disesuaikan dengan kebutuhan pengguna
e. Dukungan yang berlimpah (Komunitas open source, enterprise, dan vendor)

4. Risiko Menggunakan Cloud Computing
Beberapa risiko yang mungkin terjadi antara lain.
a. Service Level
Cloud provider mungkin tidak ada konsisten dengan performa dari aplikasi atau transaksi. 
b. Privacy
Karena penggun lain / perusahaan lain juga melakukan hosting kemungkinan data anda keluar atau dibaca oleh perintah U.S. dapat terjadi tanpa sepengetahuan pengguna 
c. Compliance
Harus memperhatikan regulasi dari bisnis yang anda miliki, dalam hal ini secara teoritis cloud service provider diharapkan dapat menyamakan level compliance dalah hal penyimpanan data. 
d. Data Ownership
Apakah data pengguna masih menjadi milik pengguna begitu data tersebut tersimpan di Cloud? pengguna perlu mengetahui seperti hal yang terjadi pada Facebook yang mencoba untuk merubah terms of use aggrement yang mempertanyakan hal ini.  
e. Data Mobility  
apakah pengguna dapat melakukan share data diantara cloud service

Referensi
[1] I Putu Agus Eka Pratama, "PPT Matakuliah Network Operating System Pertemuan 11 : NOS dan Cloud Computing" 2018

Rabu, 18 April 2018

Security dan Security Manajement

Nama : Oka Wisnu Mahaputra
NIM : 1605551074
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA

Security dan Security Manajement
Jurusan Teknologi Informasi, Fakultas Teknik, Universitas Udayana
Jalan Raya Kampus Unud, Bukit Jimbaran, Bali, Indonesia


Pendahuluan
    Keamanan jaringan sangat dibutuhkan dalam pembuatan aplikasi web. Pengguna yang menggunakan jaringan harus merasa khawatir karena hacker dapat melihat aktivitas pengguna. Dalam artikel ini akan menjelaskan keamanan, jenis hacker dalam jaringan, dan cara management keamanan jaringan.

1. Security
         Keamanan ada 3 hal jika berbicara tentang sistem antara lain, user dan kebijakan dalam bentuk ISO. Security umumnya berada pada aplikasi yang dimuat agar data aplikasi tidakmudah terjadi kerusakan, layanan, jaringan internet terhubung attacker dengan tacker, data, dan informasi. Dalam dunia internet pengguna harus merasa tidak aman sebagai contoh website, aplikasi, dll. Hacker dapat mengendalikan, melihat data, dan mengamati setiap aktivitas dari komputer. 

2. Jenis Vulnerability
     Vulnerability adalah sesuatu yang berkaitan dengan sistem komputer yang memungkinkan seseorang mengoperasikan dan menjalankan dengan benar. Ada banyak tipe vulnerability antara lain, ada mengkonfirmasikan dalam bentuk setup service atau flaw programming service.

Screenshot_6.png
Jenis Vulnerability
         Gambar diatas menjelaskan bahwa jenis yang paling banyak digunakan ntuk melakukan hacker dalam security yaitu XSS dan mising Authorization Check. XSS (Cross Site Scripting ) mengacu pada serangan injeksi kode sisi klien dimana penyerang dapat mengeksekusi skrip jahat ke situs wab atau aplikasi web yang sah. XSS adalah salah satu kerentanan aplikasi web yang paling merajalela dan terjadi ketika aplikasi web memanfaatkan input pengguna yang tidak divalidasi.

3. Security Enhanced Linux (SELinux) Architecture

Screenshot_7
Architecure SELinux
           Gambar diatas menjelaskan bahwa diantara network operating sistem beberapa berbasis kernel secara umum memiliki kekuatan keamanan di layar. Pada dasarnya diletakkan disisi server dan melakukan sistem attacker. Bentuk keamanan salah satu antara lain security anhanced linux.

4. Honeypot
        Honeypot merupakan contoh pot ini diisi madu hama, pada hama terjebak di perangkap. Didalam sebuah sistem itu membuat seakan akan rapuh, tetapi bukan itu hanya jebakan dimana seorang attacker aal berpikir itu sistem rapuh, ketika melakukan penyerangan maka akan langsung melakukan pencarian kepada attacker.

5.  Security Management dan NOS Security Management
Langkah-langkah management jaringan antara lain.
-Mendeteksi adanya bentuk serangan, adanya banyak flatform sebagai contoh IDS dimana cara kerjanya yaitu mengecek aliran data
-Akses kontrol dari level fisik
-Memperhatkan serangan dalam bentuk alam. Contoh gempa bumi dan tsunami
-Risk management
-Prosedur keamanan, misal kejadian kasus kejahatan jangan sampai merubah case
-Manajemen pengguna
-Manajemen hak akses
-Manajemen memori
-Sumber kode, keterbukaan sumber kode keamanan pengembangan di sisi software
-Harus melakukan simulasi penyerangan berbasis honeynet dan honeypot

Kesimpulan
Keamanan jaringan sangat dibutuhkan dalam dunia elektronik, dimana setiap pembuatan elektronik yang mengandung jaringan harus mewaspadai serangan dari attacker dikarenakan banyak cara untuk melakukannya untuk meminimalisir attacker

Referensi
[1] I Putu Agus Eka Pratama, "PPT Matakuliah Network Operating System Pertemuan 10 : Security dan Security Management" 2018

Minggu, 15 April 2018

SCHEDULING

Nama : Oka Wisnu Mahaputra
NIM : 1605551074
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA

SCHEDULING 
Jurusan Teknologi Informasi, Fakultas Teknik, Universitas Udayana
Jalan Raya Kampus Unud, Bukit Jimbaran, Bali, Indonesia


Pendahuluan 
Apakah yang dimaksud dengan scheduling? Scheduling merupakan satu atau beberapa buah aturan, mekanisme, dan prosedur di dalam sistem operasi (melibatkan kernel, aplikasi, proses) terkait dengan urutan kerja yang dilakukan oleh komputer dan sistem komputer. Scheduling ada di dalam semua sistem operasi manapun. 

Kenapa perlu panjadwalan pada sistem operasi?
Seperti yang sudah kita bahas pada artikel sebelumnya, kita tahu bahwa kernel (inti sistem operasi) memiliki utilitas, fungsi utama, dan dukungan terhadap software dan hardware (sesuai dengan arsitektur komputer : 32 atau 64), kemudian kita tahu juga bahwa adanya proses yang berjalan pada sistem operasi. Ini kenapa diperlukan adanya penjadwalan agar setiap proses dan fungsi-fungsi utama dalam sistem operasi dapat berjalan dengan kinerja yang baik, dan memperkecil kemungkinan kegagalan saat sistem operasi berjalan. 

Multiprogramming
Multiprogramming adalah kemampuan sistem operasi untuk menjalankan 2 aplikasi atau lebih secara bersama-sama, menghasilkan sejumlah proses, sedangkan multiprocessing adalah kemampuan penanganan 2 proses atau lebih secara bersama-sama. Perbedaan antara multiprogramming adan multiprocessing adalah disisi software dan disisi hardware. 

Peran Penjadwalan
1.Memaksimalkan Throughput
2. Memaksimalkan kinerja dan waktu processor
3. Efisiensi proses
4. Keadilan (fairness) pada semua job dan aplikasi 
5. Meminimalkan waktu tanggap (time respond)
6. Optimalisasi sumber daya (resource)

Jenis Penjadwalan 
Terdapat 4 macam Scheduling (penjadwalan). Proses berjalannya penjadwalan dapat digambarkan sebagai berikut. 

Long Term Scheduling, yaitu penjadwalan dengan menambahkan pool untuk proses yang akan dieksekusi
Medium Term Scheduling, yaitu penjadwalan dengan menambahkan jumlah dari proses baik secara penuh maupun parsial di dalam memori utama
Short Term Scheduling, yaitu penjadwalan dengan memilih proses mana yang akan dieksekusi terlebih dahulu oleh processor dalam waktu singkat
I/O Scheduling, yaitu penjadwalan dengan memilih proses mana yang tertunda yang dapat dilanjutkan kembali berdasarkan ketersediaan perangkat I/O

Berikut gambaran antrian pada sistem Scheduling 

Berikut gambaran tingkatan dalam sistem Scheduling 


Algoritma Scheduling 
Berikut macam-macam algoritma Scheduling
1. Round Robin
Menggunakan konsep antrian (queue). Setiap proses memiliki time quantum untuk menandai waktu dari proses yaitu apabila time quantum selesai maka proses selesai. Setiap proses diberi nilai yang sama untuk time quantum yaitu 1/n
Time quantum jangan terlalu kecil (proses tidak dapat selesai dalam 1 quantum), jangan juga terlalu besar (akan menjadi FCFS/First Come First Serve). Nilai ideal time quatum adalah 80 (skala 0-100)
2. Rirst In First Out (FIFO) 
Proses yang terlebih dahulu datang akan segera dieksekusi, bagaimana jika ada proses panjang dan proses pendek? Tetap sesuai waktu kedatangan, oleh karena itu algoritma ini merugikan proses pendek. 
3. Shortest Job First (SJF)
Memperbaiki FIFO proses, pada algoritma ini proses yang lebih pendek akan didahulukan / diprioritaskan. Algoritma ini akan melakukan cek pada masing-masing proses.


Referensi
[1] I Putu Agus Eka Pratama, "PPT Matakuliah Network Operating System Pertemuan 3 : Scheduling" 2018

SCHEDULING LANJUTAN

Nama : Oka Wisnu Mahaputra
NIM : 1605551074
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA


SCHEDULING (lanjutan)
Jurusan Teknologi Informasi, Fakultas Teknik, Universitas Udayana
Jalan Raya Kampus Unud, Bukit Jimbaran, Bali, Indonesia

Algoritma Scheduling 
Pada artikel sebelumnya saya sudah menjelaskan mengenai 3 algoritma yaitu Round-Robin Scheduling, First-Served Scheduling (fcfs), Shortest Scheduler (SJF), algoritma yang kami bahas , yaitu Shortest Process Next (SPN), Feedback, Shortest Remaining Time (SRT), Highest Response Next (HRRN)
Shortest Process Next (SPN)
Shortest Process Next merupakan algoritma untuk mengecek processing time (waktu pemrosesan/waktu eksekusi) setiap jb, yang terpendek dimasukkan ke urutan antrian (queue) terdepan, yang terpanjang paling belakang.
Feedback
Feedback merupakan penjadwalan berprioritas dinamis, penjadwalan in untuk mencegah (mengurangi) banyaknya swapping dengan proses-proses yang sangat banyak menggunakan pemrosesan (karena menyelesaikan tugasnya memakan waktu yang lama) diberi jatah waktu (jumlah kwanta) lebih banyak dalam satu waktu
ketentuan yang berlaku adalah sebagai berikut.
1. jalankan proses pada kelas tertinggi
2. jika proses menggunakan seluruh kwanta yang dialokasikan, maka diturunkan kelas prioritasnya
3. Proses yang masuk untuk pertama kali ke sistem langsung diberi kelas tertinggi. Mekanisme ini mencegah proses yang perlu berjalan lama swapping berkali-kali dan mencegah proses-proses interaktif yang singkat harus menunggu lama
Sortest Remaining Time
Sortest Remaining Time merupakan penjadwalan berprioritas dinamis adalah premtive untuk timesharing melengkapi SJF, pada SJF proses pada sisa waktu jalan diestimasi terendah dijalankan, termasuk proses-proses yang baru tiba. Pada SJF, begitu proses dieksekusi, proses dijalankan sampai selesai. Pada SRF, proses yang sedang berjalan (running) dapat diambil alih proses baru dengan sisa waktu jalan yang diestimasikan lebih rendah. 

Kelemahan : 
1. Mempunyai overhead lebih besar dibanding SJF. SJF perlu penyimpanan waktu layanan yang telah dihabiskan job dan kadang-kadang harus menangani peralihan. 
2. Tibanya proses-proses kecil akan segera dijalankan.
3. Job-job lebih lama berarti dengan lama dan variasi waktu tunggu lebih lama dibandingkan pada SJF
4. SRF perlu menyimpan waktu layanan yang telah dihabiskan, menambah overhead. Secara teoritas, SRF memberi waktu tunggu minimum tetapi karena overhead peralihan, maka pada situasi tertentu SFJ bisa memberi kinerja lebih baik dibanding SRF

Highest Response Ratio Next 
Highest Response Ratio Next merupakan penjadwalan berprioritas dinamis, penjadwalan untuk mengoreksi kelemahan SJF, Highest Response Ratio Next adalah strategi penjadwalan dengan prioritas proses tidak hanya merupakan fungsi waktu layanan tetapi juga jumlah waktu tunggu proses. Begitu proses mendapat jatah pemroses, proses berjalan sampai selesai.

Penjadwalan dan Network Operating System
Apa saja peran Scheduling pada NOS secara spesifik?
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 sistrm operasi).

Praktek 1 Melihat Log System 
Cek dan Amati log di sistem operasi Linux anda ( latihan untuk dapat mengamati log server di mesin remote via SSH nanti )
1. Buka Terminal pada Linux
2. Ketik cd /var/log, ini berarti kita menuju folder var/log
3. Untuk membuka Log System, kita hanya perlu mengetik "nano syslog " kode program ini akan mengakses syslog pada folder /var/log tadi, dan membukanya.

4. Amati proses yang terjadi (catatan : jika menjadi root, jangan melakukan perubahan pada log)
      Gambar diatas merupakan sistem yang terjadi pada laptop kita, dengan membukanya malalui terminal dan memasuki memalui syslog, pada gambar tersebut terlihat menampilkan aktivitas kita, dari bulan, jam, nama komputer kita, dan aktivitas apa saja yang kita lakukan. Catatan : apabila nano belum terinstal, ketik sudo apt-get install nano.

Praktek 2 : Melihat Semua File Log
Ketahui semua file log yang ada di dalam sistem operasi Linux (bahan penting bagi Sysadmin Linux), caranaya hampir sama seperti yang tadi hal yan berbeda, disini kita tidak perlu masuk ke syslog tetapi melihat file yang ada dalam folder log, caranaya yaitu :
1. Buka terminal
2. Ketik pwd, seharusnya ada di /home user-anda, jika belum ketik ~
3. Pindah ke lokasi /var/log dengan perintah cd / var/log
4. Lihat list semua file yan ada dengan perintah ls -la (machine) atau ls -lah (human readable)
5. Amati setiap isi file dengan perintah nano (namafle) atau apabila ada sub direktori, pindahlah kesana lalu buka dengan nano
        Gambar diatas, merupakan isi folder dari log, terlihat banyak sekali file yang ada pada file log seperti pada gambar tersebut. Disini kita tahu apa-apa saja yang ada pada suatu folder dengan menggunakan terminal di Linux

Referensi
[1] I Putu Agus Eka Pratama, "PPT Matakuliah Network Operating System Pertemuan 4 : Scheduling Lanjutan" 2018

Kamis, 12 April 2018

NOS PADA SERVER

Nama : Oka Wisnu Mahaputra
NIM : 1605551074
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA


NOS PADA SERVER
Jurusan Teknologi Informasi, Fakultas Teknik, Universitas Udayana
Jalan Raya Kampus Unud, Bukit Jimbaran, Bali, Indonesia

Pendahuluan
     Server merupakan penyedia layanan di dalam jaringan komputer, intranet maupun internet. Hal-hal yang disediakan oleh server mencangkup mail, cloud, web, DNS, database, dan lainnya. Server memerlukan Network Operating System dalam implementasinya. NOS mengutamakan keamanan, kemudahan, konsumsi sumber daya komputasi, yang irit serta handal di dalam jaringan yang diperlukan. Ada 4 hal yang diperhitungkan pada sistem operasi antara lain. 
1. Keamanan yang artinya faktor keamanan yang penting diperhatikan.
2. kemudahan yang artinya pengguna dapat dengan mudah untuk melakukan pengoperasian dan tidak harus GUI (Graphical User Interface)
3. Konsumsi sumber daya artinya tidak boleh boros resource, seberapa besar spesifikasinya mencapai 40% dari total 100% yang disediakan.
4. Handal yang artinya di dalam jaringan komputer bandwith, delay, dan throughput.

NOS untuk Server
       Operating system Linux dan kernel Linux dengan semua distributor (distro), Free BSD dan semua varian BSD yag berupa Open BSD, Dragon Fly BSD, PC BSD, dll. berikut merupakan distro Linux untuk NOS paling popular. 

Screenshot_1
Peringkat Distro Linux untuk NOS populer


Screenshot_2
Distro Linux untuk Cloud Server Terpopuler


OS Server untuk Website

Mengapa Linux dan BSD

1. Keamanan
2. Dukungan Komunitas dan Enterprise
3. Open Sources
4. Memiliki kekuatan dalam sisi Software

Pemilihan, Manajemen, Konfigurasi, Maintance NOS untuk Server

1. Pemilian yang memiliki arti mempertimbangkan keamanan, kenyamanan, dukungan, biaya,                kebuthan maka dari sisi diilih distro mana yang harus dipilih.
2. Manajemen memiliki arti sebuah NOS harus bisa menajemen ini terhadap pengguna, hakakses,          kepemilikan, memori, dan penyimpanan
3. Konfigurasi yang memiliki arti fle harus konfigurasi berbasi text sehingga perlu SSD. 
4. Maintance memiliki arti untuk memperbaiki konfigurasi ulang berkala seperti                                      perhari/permnggu/perbulan.

Referensi
[1] I Putu Agus Eka Pratama, "PPT Matakuliah Network Operating System Pertemuan 9 : "NOS PADA SERVER

KERNEL DAN KERNEL LINUX

Nama : Oka Wisnu Mahaputra
NIM : 1605551074
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA

KERNEL DAN KERNEL LINUX
Jurusan Teknologi Informasi, Fakultas teknik, Universitas Udayana
Jalan Raya Kampus Unud, Bukit Jimbaran, Bali, Indonesia


Pendahuluan 
       Kernel merupakan inti dari sistem operasi. inti dari sistem operadi memuat utilitas, fungsi-fungsi dasar dan kemampuan utama sebuah OS/NOS secara umum. OS merupakan penghubung antara software dan hardware pada sistem komputer, sedangkan kernel merupakan inti dari OS.

Kernel Linux
     Kernel Linux adalah inti dari sistem operasi Linux. Kernel Linux dan aplikasi-aplikasi berlisensi FOSS (GNU) merupakan OS-NOS GNU/Linux diciptakan oleh Linus Torvald Kernel Linux dan OS/NOS Linux telah mengalami perkembangan pesat sejak 20-an tahun perkembangannya. 


Percobaan 
1. unduh kernel Linux versi awal di alamat https://mirrors.edge.kernel.org/pub/linux/kernel/Hist oric/linux-o.0l.tar.gz.
2. lalu ekstrak hingga membentuk folder dan sub folder beserta file-file (.c dan .h).
3. pelajari sumber kode tersebut (ex : sched.c untuk penjadwalan)

printk.c
        Kode berikut merupakan bagian dari program dari kernel Linux, yaitu file panic.c. File ini merupakan fungsi dari kernel yang dipanggil ketika ada kerusakan

Referensi
[1] I Putu Agus Eka Pratama, "PPT Matakuliah Network Operating System Pertemuan 8 : "Kernel dan Kernel Linux".2018.

Selasa, 20 Februari 2018

Network Operating System

Nama : Oka Wisnu Mahaputra
NIM : 1605551074
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA



NETWORK OPERATING SYSTEM
Jurusan Teknologi Informasi, Fakultas Teknik, Universitas Udayana
Jalan Raya Kampus Unud, Bukit Jimbaran, Bali, Indonesia


Pendahuluan

Sistem adalah serangkaian sub sistem yang saling terkait dan tergantung satu sama lain, bekerja bersama-sama untuk mencapai tujuan dan sasaran yang sudah ditetapkan sebelumnya. Semua sistem memiliki input, proses, output, dan umpan balik. Sedangkan operasi adalah suatu kegiatan yang dilakukan untuk menyelesaikan suatu permasalahan tertentu. Dari definisi diatas dapat disimpulkan bahwa sistem operasi adalah adalah serangkaian sub sistem yang saling terkait dan tergantung satu sama lain, dan bekerja bersama-sama untuk mengatur setiap operasi yang dijalankan didalam komputer.

Fungsi sistem operasi
Fungsi Umum
1. Memudahkan pengguna komputer
Sistem operasi tentunya sangat membantu penggunanya dalam menjalankan sistem operasi, karena pada sistem operasi kita dapat melihat tampilan yang mudah untuk digunakan

2. Efisiensi sumber daya komputasi
  Mengatur setiap proses yang ada pada komputer agar dapat berjalan dengan semestinya dan menggunakan setiap proses se-efisien mungkin agar dapat mengeksekusi tiap program dan mencegah serta menangani error.

3. Membantu pengembangan, pengujian, perbaikan aplikasi dan layanan
Sistem operasi sangat membantu untuk menciptakan atau mengembangkan aplikasi yang ada pada komputer. Karena adanya sistem operasi inilah para pengembang dapat menggunakan Developer Engine untuk menciptakan sebuah aplikasi atau layanan.

Fungsi khusus
1. Membantu pengembangan software melalui IDE, debugger, dan editor.
2. Mengeksekusi dan menginstall program.
3. Membantu akses ke I/O Device.
4. Mengontrol akses file dan data.
5. Mengakses sistem (root, user).
6. Mendeteksi dan menangani error
7. Menghitung statistik penggunaan resource komputasi.
8. manajemen instruksi melalui bahasa mesin dan hardware.
9. menangani data binari.
10. penyediaan API (Application Programming Interface) untuk pengembangan software.
Referensi 
[1] I Putu Agus Eka Pratama,“PPT Matakuliah Network Operating System Pertemuan 1 : Sistem operasi,”2018.

Proses pada OS (Operating System)

Nama  : Oka Wisnu Mahaputra
NIM    : 1605551074
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA



PROSES PADA SISTEM OPERASI (OS)
Jurusan Teknologi Informasi, Fakultas Teknik, Universitas Udayana
Jalan Raya Kampus Unud, Bukit Jimbaran, Bali, Indonesia


Pendahuluan

Proses adalah unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan oleh sistem operasi. Proses adalah sebuah program yang sedang dalam kondisi dijalankan. 
     Proses menggambarkan aktivitas yang sedang terjadi pada sistem operasi, disertai dengan nilai dari program counter dan isi dari daftar prosesor (processor’s register). 
     Dua proses dapat dihubungkan dengan program yang sama, dimana program tersebut dianggap dua urutan eksekusi yang berbeda. Contohnya, proses x dan proses y dapat muncul dari dijalankannya program 1, baik oleh 1 pengguna maupun n pengguna. Tiap-tiap proses ini adalah proses yang berbeda meski kontennya sama. Biasanya ada beberapa proses yang menghasilkan banyak proses begitu bekerja.

Kondisi (state)
Proses sejatinya bersifat mengubah state (kondisi awal/statis). Setiap proses pasti memiliki status proses masing-masing. 5 kondisi proses sebuah program dijalankan.
1. Mulai (New)
Saat kita mulai menjalankan program sistem operasi akan menyiapkan sumber daya (resoure

2. Berjalan (Running)
Saat sumber daya (resource) siap untuk digunakan dan di-instruksikan untuk mengeksekusi sesuatu maka proses akan mengerjakannya, 

3. Menunggu (Waiting)
Sumber daya sudah siap namun program belum berjalan, hal ini dikarenakan proses masih menunggu sebuah kejadian, seperti sebuah penyelesaian input/output atau penerimaan sebuah tanda / signal.

4. Siap (Ready)
     Status ready ini kondisi dimana proses sudah siap digunakan oleh program, namun memang belum dikerjakan karena belum ada instruksi untuk melakukan pekerjaan.

5. Terminasi (Terminated)
Adalah kondisi apabila proses telah selesai melaksanakan eksekusi. Kondisi ini tidak hanya ketika program selesai dijalankan, terjadi kesalahan pada sumber daya (resource) dimana proses tidak mampu untuk berjalan karena terlalu berat, biasanya sistem operasi akan memberi batas waktu respon, apabila melewati batas waktu tersebut proses akan berhenti. Hal ini bertujuan agar sistem operasi dapat menjalankan proses lainnya yang telah dijadwalkan, dikarenakan suatu proses umumnya termasuk Process stack


Process Control Block
Process Control Block (PCB) berfungsi menggambarkan setiap proses pada sistem operasi dan memuat informasi lebih mendalam dari setiap proses. PCB berfungsi sebagai tempat penyimpanan informasi apapun yang bervariasi dari proses ke proses. Ada 6 informasi yang ditampilkan oleh PCB, yaitu sebagai berikut.
1. Keadaan proses
Seperti bahasan sebelumnya yang telah kita bahas, ada 5 kondisi proses yaitu new, ready, running, waiting, dan terminated.

2. Program counter
Program counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk proses ini.

3. CPU register
Terdapat bervariasi register dalam jumlah dan jenis, tergantung pada arsitektur dan rancangan komputer.

4. Informasi manajemen memori
Informasi dapat berupa nilai dari dasar dan batas register, tabel halaman, atau tabel segmen, tergantung pada sistem memori yang digunakan oleh sistem operasi.

5. Informasi pencatatan
Meliputi jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun, jumlah job, atau proses.

6. Informasi status I/O
Meliputi daftar dari perangkat I/O yang digunakan pada proses, dan daftar open berkas tergantung dari I/O yang diberikan.

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.
Proses yang berjalan dalam sistem operasi kita dapat kita lihat. Jika menggunakan sistem operasi windows dapat dilihat melalui task manager.
 Proses sedang berjalan pada sistem operasi windows.

gambar diatas adalah berupa tampilan task manager yang menampilkan proses yang berjalan pada sistem operasi windows. Jika menggunakan sistem operasi linux kita bisa melihatnya melalui terminal menggunakan command top.

Proses sedang berjalan pada sistem operasi linux.

Gambar diatas merupakan tampilan dari terminal apabila menjalankan command top, data yang ditampilkan merupakan proses apa saja yang berjalan pada sistem operasi linux.

Referensi 
[1] I Putu Agus Eka Pratama,“PPT Matakuliah Network Operating System Pertemuan 2 : Proses,”2018.
2. https://krisnatech12.blogspot.co.id/2018/02/proses-pada-sistem-operasi.html