Senin, 21 Maret 2016

TUGAS PRAKTIKUM 4 SISTEM OPERASI -- PROSES PENJADWALAN DI LINUX

Assalamualaikum semuanyaaa :)
Pada kesempatan kali ini saya akan mencoba menyampaikan materi tentang Proses Penjadwalan pada Linux. Saya membuat artikel ini untuk memenuhi Tugas Praktikum 4 Sistem Operasi. Langsunng saja pada pembahasannya.

Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. Proses penjadwalan yang akan dibahas disini adalah proses penjadwalan sistem operasi LINUX.

Penjadwalan Proses

Pada sistem Linux, terdapat banyak cara untuk menangani eksekusi-eksekusi perintah. Diantaranya, diberi kesempatan untuk membuat daftar perintah dan menentukan kapan perintah dijalankan oleh sistem. Perintah at , sebagai contoh memberi peluang untuk menjalankan program berdasarkan waktu yang ditentukan. Perintah batch adalah semiliar dengan at, namun batch menjalankan program-program manakala sistem menemukan waktu untuk mereka. Contoh perintah command “At”.


  1. Command “At”
Dengan menggunakan Perintah ini kita dapat melakukan penjadwalan pekerjaan kita pada waktu tertentu. Misalnya Pada jam 12.00 kita ingin melakukan ping ke alamat 192.168.0.1 maka commandnya adalah :
Pertama kita buat file di /home dengan nama coba (command untuk buatnya adalah ”#touch coba” tanpa tanda petik). File ini sebagai tempat kita menyimpan/melihat proses
Lalu selengkapnya seperti di bawah ini :
(root@Sigit home)#touch coba
(root@Sigit home)#at 12.00
at>ping 192.168.0.1 > /home/coba
at>ctrl-D (ket:Tekan Ctrl+D)
Maka jam 12.00 akan terjadi proses ping ke Ip 192.168.0.1 yang keterangan prosesnya ada di file /home/coba.

Dan berikut beberapa perintah at pada linux :

  • at
Masuk ke perintah waktu.

  •  at <masukkan_waktu>
Memasukkan perintah yg di eksekusi sesuai dengan waktu yg kita tentukan.



  • atq
Melihat daftar perintah yang telah kita buat atau jadwalkan.



  • atrm nomor_urutan_jadwal.
Untuk menghapus schedul yg telah kita buat.

Pada screenshoot di atas, perintah yg pertama telah berhasil di eksekusi. Sesuai perintahnya yaitu menambahkan folder yuliii pada waktu 06.12 AM.




Perintah cron memungkinkan program untuk menjalankan secara pereodik, dan perintah crontab mengizinkan user untuk mengedit file-file yang digunakan oleh cron.
Contoh perintah command “crontab” :

2. Command “crontab”

Dengan menggunakan command ini kita dapat melakukan penjadwalan pekerjaan kita secara berulang-ulang.
Misalkan kita ingin melakukan ping ke alamat IP 192.168.0.1 setiap 5 menit sekali. Caranya seperti ini :
Pertama kita membuat file ping.sh
(root@sigit home)#vi ping.sh
Isi dari file ping.sh adalah:
#!/bin/sh
ping 192.168.0.1
Simpan file ini dengan cara tekan esc lalu ketikan “:wq!” (tanpa petik atas)
Kemudian kita edit crontabnya dengan cara :
(root@Sigit home)#crontab –e
lalu tambahkan sebagai berikut kedalam crontab:
0,5,10,15,20 * * * * sh /bin/ping.sh
Maka setiap lima menit computer anda akan melakukan ping ke IP 192.168.0.1
Perintah-perintah scheduling tersebut sangat berguna sat ingin melakukan pengaturan terhadap sistem agar tidak terlalu sibuk menjalankan tugas-tugas. Teknik ini juga sangat baik untuk eksekusi script-script bagi layanan-layanan exksternal seperti query-query database.

Umumnya, crontab sudah tersedia pada sistem operasi berbasis Linux. Jika belum, kita dapat memasangnya dengan cara mengetikkan command berikut di terminal:
sudo apt-get install crontab
Jika sudah terpasang, mari kita coba gunakan crontab dengan cara mengetikkan command
crontab -e. Akan muncul tampilan seperti berikut:


Kemudian kita pilih pilihan yang ke 2 (/bin/nano) untuk mempermudah kita. Jika sudah, maka akan muncul tampilan seperti berikut.


Tampilan diatas adalah tampilan pada isi fie crontab yang akan kita gunakan nantinya.


  • Pada kali ini saya mencoba memasukkan perintah di dalam crontab -e. perintahnya yaitu :
10 * * * * mkdir winaaa
30 5 * * * mkdir cancer




  • Crontab -l (list user's crontab) merupakan perintah untuk melihat daftar perintah yg telah kita isi di perintah crontab -e.




  • Crontab -r (delete user's contab) merupakan perintah untuk menghapus perintah yang telah kita add.





Perintah crontab -e digunakan untuk mengubah, melihat, atau membuat crontab baru yang akan dijalankan oleh crontab. Untuk membuat perintah baru yang akan dijadwalkan, kita dapat mengetikkan perintah dengan format penulisan khusus sebagai berikut:
* * * * * <perintah>

Format penulisan diatas terdiri atas lima buah bintang, yang menandakan waktu dan perintah yang akan kita jalankan. Berikut penjelasannya:
Tanda bintang berarti “setiap”
  • Bintang pertama menandakan menit, dapat diganti dengan angka dari 0 – 59
  • Bintang kedua menandakan jam, dapat diganti dengan angka 0 – 23 (format 24 jam)
  • Bintang ketiga menandakan hari dalam sebulan, dapat diganti dengan angka 1 – 31 (tanggal)
  • Bintang keempat menandakan bulan, dapat diganti dengan angka 1 – 12 (angka bulan)
  • Bintang kelima menandakan hari dalam seminggu, dapat diganti dengan angka 0 – 6 (angka 0: minggu)
·         Agar mempermudah pembacaan, kami sarankan untuk membaca bintangnya dari belakang terlebih dahulu

·         Berikut cara menggunakan crontab:
* * * * * sync Menjalankan perintah sync pada menit 0, setiap jamnya
*/5 * * * * echo 3 > /proc/sys/vm/drop_caches Mengubah value pada fie drop_caches menjadi 3 pada menit 0
10 * * * * <perintah> Menjalankan suatu perintah setiap menit ke-10
30 18 * * * <perintah> Menjalankan suatu perintah setiap jam 18:30
30 08 10 06 * <perintah> Menjalankan suatu perintah setiap tanggal 10, bulan juni, jam 8.30
00 11,16 * * * <perintah> Menjalankan suatu perintah setiap hari, jam 11.00 dan jam 16.00
00 11-16 * * * <perintah> Menjalankan suatu perintah setiap hari, jam 11.00 s/d 16.00 Selain format diatas, ada juga penulisan lain dengan waktu khusus. Contohnya:
·         @yearly
·         @monthly
·         @weekly
·         @daily
·         @hourly
·         @reboot


Mungkin itu saja yang dapat saya sampaikan. Semoga bisa menambah penetahuan bagi kita semua :)
Jika masih penasaran tentang Sistem Operasi, kami mempunyai sumber yang bisa ditanyakan hehe
http://poss.cs.upi.edu/
http://cs.upi.edu/




Referensi
Modul Praktikum Sistem Operasi 2016


TUGAS PRAKTIKUM 3 SISTEM OPERASI -- MANAJEMEN PROSES DI SISTEM OPERASI

Assalamualaikum semuanyaaa :)
Pada kesempatan kali ini saya akan mencoba menyampaikan materi tentang Manajemen Waktu pada Sistem Operasi. Saya membuat artikel ini untuk memenuhi Tugas Praktikum 3 Sistem Operasi. Langsunng saja pada pembahasannya.

Secara informal, proses adalah program dalam eksekusi. Suatu proses adalah lebih dari kode program, dimana kadang kala dikenal sebagai bagian tulisan. Proses juga termasuk aktivitas yang sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor’s register. Suatu proses umumnya juga termasuk process stack, yang berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan sebuah data section, yang berisikan variabel global. suatu program adalah satu entitas pasif, seperti isi dari sebuah berkas yang disimpan didalam disket, sebagaimana sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang mengkhususkan pada instruksi selanjutnya untuk dijalankan dan seperangkat sumber daya/ resource yang berkenaan dengannya.

Sistem operasi bertanggung jawab terhadap aktifitas yang berhubungan dengan manajemen proses:
Pembuatan dan penghapusan proses.
Penyedia mekanisme untuk:

  1. Sinkronisasi antar proses
  2. Komunikasi antar proses
  3. Penanganan Deadlock
Ada empat konsep dasar pada manajemen proses, yaitu:

  • Multiprogramming

Salah satu teknik penjadwalan dimana tugas (task) yang sedang berjalan tetap berjalan hingga task tersebut melakukan operasi yang membutuhkan waktu untuk menunggu respon dari luar (istilah lainnya external event).

  • Pseudoparallelism
Eksekusi proses secara paralel pada sistem.

  • Multiprocessing
Kemampuan pemrosesan komputer yang dilakukan secara simultan/bersamaan. Istilah ini juga serupa pada dukungan sebuah sistem untuk mendukung lebih dari satu prosesor, dan mengalokasikan tugas kepada prosesor-prosesor tersebut.

  • Distributed Processing
Mengerjakan semua proses pengolahan data secara simultan antara komputer utama dengan beberapa komputer lainnya dan saling terhubung melalui jalur komunikasi. 

Berikut beberapa model proses:

  • Sequential Process
  • Multiprogramming
  • CPU Switching
Proses memiliki operasi-operasi seperti:

  • Penciptaan proses
  • Penghancuran / terminasi proses
  • Penundaan proses
  • Perlanjutan kembali proses
  • Mengeblok proses
  • Membangunkan proses (wake)
  • Menjadwalkan proses
  • Komunikasi antar proses
Berikut adalah perintah-perintah proses di linux :

  • ps
Instruksi ps (process status) digunakan untuk melihat kondisi proses yang ada.



  • ps u
Instruksi ps (process status) digunakan untuk melihat kondisi proses yang ada, tapi lebih detail dari perintah ps.



  • ps -u <nama_user>
menampilkan proses apa saja yg dijalankan oleh user.



  • ps –a
menampilkan proses yang baru saja di eksekusi.



  • ps –au
gabungan antara ps -a dan ps -u, dalam hal ini kita dapat melihat status user nya juga root atau user sendiri.



  • ps –aux
menampilkan semua kondisi proses yang ada.



  • top / htop
menampilkan proses yang sedang berjalan.



  • ps –eF
menampilkan proses yg berhubungan antara parent dan child, tapi lebih detail dan diberitahu letak prosesnya.



  • ps –eH
menampilkan proses yg berhubungan antara parent dan child.



  • pstree
Menampilkan semua proses pada sistem dalam bentuk hirarki (parent/child).



  • kill
menutup program atau proses yang sedang running. perintah ini menutup proses pada nomor_job atau Process ID nya.
contoh :
kill %<nomor_job> (contoh : kill %1)
kill <PID> (contoh : kill 2016)

  • pkill
sama seperti perintah kill, perintah ini menutup program atau proses yang sedang running. perintah ini menutup proses dengan nama proses yang sedang berjalan.
contoh :
pkill <nama_proses> (contoh : pkill firefox)
pkillall <nama_proses> (contoh : pkillall firefox)



Mungkin itu saja yang dapat saya sampaikan. Semoga bisa menambah pengetahuan bagi kita semua :)
Jika masih penasaran tentang Sistem Operasi, kami mempunyai sumber yang bisa ditanyakan hehe
http://poss.cs.upi.edu/
http://cs.upi.edu/



Referensi
Modul Praktikum Sistem Operasi 2016