Minggu, 14 Januari 2018

Bash System "Menggabungkan While, Let dan IF dalam satu Program"

Assalamualaikum warohmatullahi wabarokatuh
Alhamdulillah kalian nyasar lagi ke blog sireum nyoco. Nyasar yang Insya Allah berfaedah, mendapatkan ilmu baru dan dijamin akan bermanfaat untuk kalian.

Udah bersyukur kah hari ini, kalo belum mari kita bersyukur sejenak... Alhamdulillahi Robbil Alamin...

Kenapa sireum ajak kalian bersyukur karena dengan Rahmat dan Ridho-Nya sireum masih bisa membantu kalian mencari apa yang kalian belum tahu. Maka patutlah kita untuk bersyukur. 

Dalam postingan ini sireum mau ngajak kalian memahami apa itu Bash
Mari belajar...

Apa itu Bash?
Dari linux.tutorials.id sireum dapet pencerahan tentang apa itu Bash.

"Bash adalah sebuah shell Unix dan command Line Interface (CLI) language yang dibuat oleh Brian Fox untuk project GNU sebagai salah satu software gratis yang menggantikan keberadan Bourne shell. Bash shell direlease pada tahun 1989, dan telah didistribusikan secara meluas sebagai default shell untuk system Operasi GNU dan juga sebagai default shell untuk Linux dan OS X. Dan kabar gembira untuk pengguna windows, karena pada windows 10 redstone telah mulai direlease bash command sebagai linux subsystem, dan rencananya akan di publikasikan pada bulan juni 2016."

Dari definisi diatas, sireum mencoba menyederhanakannya, bahwa Bash adalah satu file yang didalamnya berisi script program perintah yang ketika dijalankan akan menghasilkan suatu proses dimana outputnya bisa berguna untuk user. 

Tidak berbeda jauh dengan program sederhana yang biasa kita temui dalam dunia komputer, dalam script program Bash pun ada yang namanya perintah While, If dan Let. Sesuai dengan judul pembahasan sekarang, sireum akan mencoba menjelaskan satu program bash yang sudah jadi. Dan dalam Pogram tersebut dalam perintah While, if dan Let. 
Berikut Script program nya.

#!/bin/bash
#kedai Ahmad Rosa

lagi='y'
clear
while [ $lagi == 'y' ] || [ $lagi == 'Y' ];
    do
        echo "MENU HARI INI";
        echo "-------------";
        echo "1. Bakso      ";
        echo "2. Gado-Gado  ";
        echo "3. Exit       ";
        read -p "Pilihan anda [1-3] :" pil;
        if [ $pil -eq 1 ];
            then
                echo -n "Banyak mangkuk = ";
                read jum
                let bayar=jum*1500;
            elif [ $pil -eq 2 ];
                then
                    echo -n "Banyak porsi = ";
                    read jum
                    let bayar=jum*2000;
                elif [ $pil -eq 3 ];
                    then
                        exit 0
                    else
                        echo "Sorry, tidak tersedia"
                        exit 1
        fi
        echo "Harga bayar = Rp. $bayar"
        echo "Haturnuhun"
        echo
        echo -n "Hitung lagi (y/t) : ";
        read lagi;
done

Dari script diatas berikut ini adalah tampilannya ketika dijalankan. Program tersebut dirancang untuk menghitung jumlah pesanan konsumen dan mengalikannya secara otomatis dengan harga yang sudah ditentukan.

Program Bash Shell

Bisa di lihat dalam program diatas, sireum sudah memberikan tanda merah bulat dan bentuk elips. Karakter yang sireum buletin warna merah itu adalah karakter yang di input manual, sedang kan yang bentuknya elips itu adalah hasil perhitungan yang menggunakan perintah Let.

Berikut sireum jelasin perintah utama dalam program diatas.
1. While. Perintah ini adalah perintah paling luar yang berfungsi melakukan pengulangan jika kondisi bernilai benar. Bisa dilihat di script While dalam program bertujuan melakukan perhitungan kembali jika user menginput karakter y kecil atau Y besar, dan jika input selain karakter tersebut maka kondisi While akan bernilai salah dan program akan berhenti melakukan pengulangan.

2. If Else dan Elif. Tidak berbeda dengan While, If juga sebagai perintah pengulangan atau looping. Dalam pogram juga digunakan Elif, yakni perintah pengulangan didalam pengulangan.

3. Let. Perintah ini digunakan untuk melakukan perhitungan variabel dengan angka. Variabel di sini adalah karakter atau kata yang berisi dengan suatu nilai (Value). 

Ketika program dijalankan, hal pertama yang dilakukan adalah membersihkan layar pada terminal karena program membaca perintah "clear". setelah itu akan memunculkan setiap kalimat yang pada dengan perintah "echo". Program akan menanyakan no berapa yang di pilih, dan inputan karakter dari keyboard akan dibaca oleh program "Read" dan menyimpannya dalam variabel. perintah pengulangan akan membaca sesuai dengan kondisi yang diberikan.

Program akan memerintahkan untuk melakukan input kembali dan membaca jumlah angka yang diberikan lalu mengalikannya dengan nominal yang sudah diberikan. Program akan menampilkan hasil proses nya dan memberikan pertanyaan kembali yang akan dibaca oleh While apakah akan melakukan transaksi lagi atau tidak.

Itu lah sedikit penjelasan tentang funsi While, If dan Let dalam program Bash. Semoga bisa menambah wawasan dan semoga bermanfaat. 
Baca selengkapnya

Selasa, 09 Januari 2018

Yu Belajar Management Memory

Selamat Datang..

Sireum ucapkan kepada semua temen sireum yang baik hati dan tidak sombong. 
Managament Memory


Mungkin ada temen sireum yang lagi kuliah dan ngambil Jurusan yang sama dengan sireum yakni Teknik Informatika. Dan di Jurusan ini ada mata kuliah SISTEM OPERASI. Mata kuliah yang menjelaskan semua tentang Struktur arsitektur sistem operasi, salah satunya tentang management Memory. Entah di semester berapa temen sireum ketemu sama mata kuliah ini. Tapi jika lah ketemu dan pas banget tugas nya sama, semoga ini bisa bantu kalian ya.
Dibawah ini ada beberapa pertanyaan yang harus wajib kudu dijawab agar dapet nilai. Setelah sireum searching di google dan dapat pencerahan, Alhamdulillah semua pertanyaan berikut ini bisa Sireum jawab. 

Management  Memori sendiri adalah tindakan mengelola memorikomputer. Kebutuhan utama manajemen memori adalah untuk menyediakan cara untuk secara dinamis mengalokasikan bagian-bagian dari memori untuk program atas permintaan mereka, dan membebaskan untuk digunakan kembali ketika tidak lagi diperlukan.

Mari kita langsung ke pertanyaan dan jawabannya.

1. Terdapat partisi memori 100K, 500K, 200K, 300K dan 600K, bagaimana algoritma First-fit, Best-fit dan Worst-fit menempatkan proses 212K, 417K, 112K dan 426K (berurutan) ? Algoritma mana yang menggunakan memori secara efisien ?

Jawab: 
First-fit : alokasi lubang pertama yang cukup untuk proses. 
Best-fit : alokasi lubang terkecil yang cukup untuk proses. Strategi ini memerlukan pencarian keseluruhan lubang, kecuali bila ukuran sudah terurut. 
Worst-fit : alokasi lubang terbesar yang cukup untuk proses. Strategi ini memerlukan pencarian keseluruhan lubang, kecuali disimpan berdasarkan urutan ukuran. Diantara algoritma diatas, first-fit dan best-fit lebih baik dibanidngkan worst-fit dalam hal menurunkan waktu dan utilitas penyimpan. Tetapi first-fit dan best-fit lebih baik dalam hal utilitas penyimpanan tetapi first-fit lebih cepat.

2. Apa yang dimaksud dengan fragmentasi eksternal dan fragmentasi internal ?
Jawab : 
Fragmentasi Eksternal adalah fragmentasi memori yang terjadi pada situasi dimana terdapat cukup ruang memori total untuk memenuhi permintaan, tetapi tidak dapat langsung dialokasikan karena tidak berurutan. Fragmentasi Eksternal ini dilakukan pada algoritma alokasi dinamis, terutama strategi first-fit dan best fit. 
Fragmentasi Internal adalah fragmentasi memori yang terjadi pada situasi dimana memori yang dialokasikan lebih besar daripada memori yang diminta tetapi untuk satu partisi tertentu hanya berukuran kecil sehingga tidak digunakan. Pada multiple partition, fragmentasi internal mungkin terjadi pada situasi berikut. Misalnya terdapat lubang 18464 byte, dan proses meminta 18462 byte. Alokasi dilakukan sesuai permintaan maka sisa lubang 2 byte. Penyimpanan ini kan memerlukan memori lebih besar dari lubang itu sendiri. Pendekatannya adalah dengan megalokasikan lubang yang sangat kecil sebagai bagian dari permintaan yang besar. 

3. Diketahui ruang alamat logika dengan 8 page masing-masing 1024 word dipetakan ke memori fisik 32 frame.
Jawab:
Ruang alamat logika dari suatu proses dibagi kedalam 2 partisi :
Partisi 1 terdiri dari 8K segmen yang pribadi (private) untuk proses tersebut.
Partisi 2 terdiri dari 8K segmen yang digunakan bersama untuk semua proses.
Informasi mengenai partisi pertama disimpan dalam local descriptor table
(LDT) sedangkan informasi mengenai partisi kedua disimpan dalam global descriptor table (GDT). Setiap entry pada tabel LDT dan GDT terdiri dari 8 byte, dengan informasi detail tentang segmen tertentu termasuk lokasi basis dan panjang segmen.
Alamat logika adalah pasangan (selector, offset), dimana selector sebanyak 16 bit.
1 page = 64 byte. Jadi page 0 akan dipetakan ke frame 8, maka alamat logika 0 akan dipetakan ke alamat fisik (8 * 64) + 0 = 512. Keadaan memori logika dapat dilihat sebagai berikut :
alamat logika 50 berada di page 0, offset 50 sehingga alamat fisiknya (8 * 64) + 50 = 562.
alamat logika 121 berada di page 1,offset 57 sehingga alamat fisiknya (2 * 64) + 57 = 185.
alamat logika 380 berada di page 5,offset 60 sehingga alamat fisiknya (1 * 64) + 60 = 
124.

a. Berapa bit alamat logika ?
Jawab: Bit alamat logika dapat dipecah atas nomor segmen dan alamat offset. Misalnya, nomor segmen menggunakan 4 bit atas alamat logika, yang berarti terdapat maksimal 212=4 kbyte.

b. Berapa bit alamat fisik ?
Jawab: Bit alamat fisik pada memori fisik pada alamat awal 8224 sehingga pada saat dieksekusi alamat 4848 akan ditranslasi menjadi 8224 + 752 = 8976.

4. Diketahui sistem paging dengan page table disimpan di memori Jika acuan ke memori membutuhkan 200 nanosecond, berapa lama waktu
melakukan paging ?
Jawab : 
Paging merupakan kemungkinan solusi untuk permasalahan fragmentasi eksternal dimana ruang alamat logika tidak berurutan,mengijinkan sebuah proses dialokasikan pada memori fisik yang terakhir tersedia . semua daftar frame yang bebas disimpan untuk menjalankan program dengan ukuran n page,perlu menemukan n frame bebas dan meletakkan program pada frame tersebut. Table page digunakan untuk menterjemahkan alamat logika ke almat fisik. Lama waktu melakukan paging adalah 40ms.

5. Jika ditambahkan associative register, dan 75 persen dari semua acuan ke page-table ditemukan dalam associative register, berapa efective access time (EAT) acuan kememori ? (diasumsikan bahwa menemukan entri pada page table di associative register membutuhkan waktu 0, jika entri ada).
Jawab :
Waktu akses efektif = 0,75 _ (200 nanodetik) + 0,25 _ (400 nanodetik) = 250 nanodetik


Itulah beberapa pertanyaan yang mungkin sama pertanyaannya sama kalian yang mendapatkan Tugas Sistem Operasi. Semoga bisa membantu dan semoga senantiasa bertambah ilmu nya.. sampai ketemu di postingan selanjutnya ya.. 
Baca selengkapnya