Wednesday, October 31, 2012

Tugas Pendahuluan Modul 4

1. Apa yang dimaksud dengan proses?
   Jawab: Proses adalah sebuah program yang dieksekusi yang akan
          dibuat oleh shell sesuai perintah yang diberikan,
          setiap kali menggunakan utilitas sistem atau program
          aplikasi dari shell.

2. Apa yang dimaksud perintah untuk menampilkan status proses:
   ps, pstree?
   Jawab: a. Perintah ps (process status) dapat digunakan untuk
             menunjukan semua proses yang sedang berjalan pada
             mesin (bukan hanya proses dan shell saat ini) dengan
          b. Perintah pstree menampilkan semua proses pada sistem
             dalam bentuk hirarki parent/child.


3. Sebutkan opsi yang diberikan pada perintah ps!
   Jawab: a. $ps           untuk melihat kondisi proses yang ada
          b. $ps -u        untuk melihat faktor/element lainnya
          c. $ps -u <user> mencari proses yang spesifik pemakai
          d. $ps -a        mencari proses lainnya (all)
          e. $ps -au       mencari proses lainnya (all user)
          f. $ps -eH       e untuk semua proses, H untuk hirarki
                           tampilan proses
          g. $ps -e f      -f menampilkan status proses dg
                           karakter grafis

4. Apa yang dimaksud denga sinyal? Apa perintah untuk mengirim sinyal?
   Jawab: —Notifikasi yang dikirimkan ke suatu proses untuk
          menandakan bahwa suatu event terjadi.
          Perintah untuk mengirim sinyal: 
                kill [-nomor sinyal] PID

5. Apa yang dimaksud dengan proses foreground dan background pada
   job control?
   Jawab: a. Foreground : area bekerja job control yang hanya
                          diperuntukkan untuk satu job pada satu
                          waktu, yang akan mengontrol shell
                          menerima input keyboard dan output ke
                          layar.
          b. Background : area bekerja job control yang tidak
                          menerima input dari terminal, biasanya
                          berjalan tanpa memerlukan interaksi.

6. Apa yang dimaksud perintah-perintah penjadwalan prioritas:
   top, nice, renice ?
   Jawab: a. top : utilitas sistem yang dimiliki beberapa versi
                   UNIX yang menyediakan cara interaktif untuk
                   memonitor aktifitas sistem.
          b. nice : perintah untuk menampilkan prioritas masing
                    masing proses yang digunakan saat memulai
                    suatu perintah.
          c. renice : perintah untuk mengubah nilai nice untuk
                      menentukan prioritas proses. Dimana semakin
                      kecil nilai nice, maka semakin besar
                      prioritas proses.



PATRICIA DIANITA WIJAYA
2011-81-016

JURUSAN TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER
UNIVERSITAS ESA UNGGUL
2012

Wednesday, October 24, 2012

Tugas Praktikum Sistem Operasi (Direktori dan File pada Linux)

Latihan1(Insert)


- Buatlah sebuah folder dengan nama anda
Perintah membuat sebuah folder (direktori) adalah dengan instruksi mkdir dengan penulisan instruksi:
mkdir <spasi> nama_folder . 
Dalam hal ini folder bernama "patricia". Penamaan 1 folder tidak boleh disertakan spasi. Lebih baik di sambung ataupun dengan "_". Jika menggunakan spasi, program secara otomatis meng-create folder berbeda. 
Misal: mkdir pat ricia maka akan terbentuk 2 folder yaitu folder 'pat' dan folder 'ricia'.
Cek isi dari folder utama (dalam hal ini adalah root) dengan instruksi "ls" untuk memastikan apakah folder yang tadi telah dibuat, berhasil dibuat atau tidak.



- Masuklah kedalam folder nama anda (dalam hal ini adalah patricia)
Cara masuk ke dalam folder yaitu dengan instruksi: 
cd <spasi> nama_folder.

- Buatlah 3 folder dengan nama Data , Dokument dan Galery
Gunakan instruksi
mkdir<spasi>nama_folder1<spasi>nama_folder2<spasi>nama_foldern



- Masuklah ke dalam folder Data, buat 3 buah file dengan nama: catatan.txt ,image.jpg dan index.html
Dalam hal ini saya menggunakan instruksi "cat>" untuk membuat file. Setiap selesai membangun sebuah file, klik Ctrl+D pada keyboard untuk mengembalikan ke folder awal dalam hal ini adalah folder Data. Seperti biasa, cek lah dengan instruksi ls, untuk memastikan.

- Buatlah juga sebuah file dengan nama [identitas.txt] kemudian tuliskan identitas anda :

Nim       :  [nim anda]
Nama      :  [nama anda]
Jurusan   : [jurusan anda]
Fakultas  : [fakultas anda]
Cek isi file dengan instruksi cat <spasi> nama_file
- Keluar dari direktori Data
Dalam hal ini saya menggunakan instruksi "cd .." untuk keluar dari folder tertentu.

- Kemudian masuk kedirektori [Dokument], buat sebuah file dengan nama [Dokumen saya.docx], kemudian ketikan :
"Pelajaran Sistem operasi sudah dimulai!!!"

- Keluarlah dari direktori Dokument
- Masuklah kedirektori [Galery] buatlah 3 buah file dengan nama : gambar1.jpg , gambar2.png, movie1.mkv

- Keluarlah dari direktori Galery





Latihan 2 (Update)

- Buka file [catatan.txt], Tulis sebuah memo :
“Hari ini telah diadakan praktikum Sistem Operasi Pertemuan 4 di Lab E.
Pada tanggal 24 10 12…”


- Simpan file tersebut kemudian kopi isi file tersebut ke file index.html 
Cara meng-copy isi fie dari 1 file ke file lain dalam satu folder (direktori) adalah dengan instruksi: 
cp <spasi> file_asal <spasi> file_tujuan

cek dengan istruksi cat index.html 

 - Pindahkan file [image.jpg] dari direktori [Data] ke direktori [nama anda]
Pertama-tama keluar dahulu dari direktori (folder) Data dengan instruksi cd ..
























- Cara memindahkan File dari satu folder ke folder sebelumnya adalah dengan instruksi:
mv <spasi> folder_asal / nama_file_yang_akan_dicopy <spasi>  nama_file_copyan_yang_akan_diletakkan_di_fplder_sebelumnya

dalam hal ini saya tidak mengganti nama file yang di copy sehingga file asli san file copy, sama.

cek dengan instruksi ls 

- Pada direktori [Galery] , gantilah nama file gambar1.jpg menjadi gambar1.png, dan ubahlah nama file movie1.mkv menjadi film1.mkv 

Pertama-tama masuk dahulu ke direktori (folder) Galery dengan instruksi:
cd <spasi> Galery

Cara mengubah nama file dan sekaligus merubah file tersebut adalah dengan instruksi:
mv nama_file_awal nama_file_ubah
lalu cek dengan instruksi ls

 - Pada direktori [Dokument] editlah file dokumen_saya.docx dengan menambahkan nim, nama serta alamat anda didalam file tersebut, terus di save kemudian copy file tersebut pada direktori yang sama.

Pertama-tama keluar dari direktori (folder) Galery dan masuk ke folder (direktori) Dokument dengan instruksi:
cd <spasi> Dokument

Cara menambahkan isi file yaitu dengan instruksi:
cat>>nama_file lalu klik enter dan masukkan isi tambahan.

Setelah itu cek kembali dengan instruksi:
cat<spasi>Dokumen_saya.docx

Cara meng-copy file dalam 1 folder (direktori) adalah dengan instruksi:

cp <spasi> nama_file_awal <spasi> nama_file_copy 






Cek kembali dengan instruksi:
cat BackupDokumen_saya.docx 











Latihan 3 (Delete)


- Hapuslah semua Direktori dalam [nama anda]

- Pastikan jika di view isi direktori tersebut sudah kosong (gunakan metode yang ada untuk melihat isi direktori)

Pertama-tama masuk ke setiap direktori turunan (sub direktori) untuk mengosongkan isi-isi dari direktori tersebut. Karena untuk menghapus 1 direktori yang memiliki sub sub direktori, harus dibersihkan dahulu dari isi setiap sub direktori.
Misal: Folder patricia memiliki sub folder Data, Dokument dan Galery.
Untuk menghapus direktori patricia, harus dihapus dulu isi dari subdirektori Data, Dokument dan Galery.
Pada direktori Dokument: hapus file Dokumen_saya.docx dan BackupDokumen_saya.docx dengan instruksi:
rm<spasi>namafile1<spasi>namafile2<spasi>namafilen




 Cara menghapus direktori adalah dengan instruksi:
rm <spasi> nama_direktori1 <spasi> nama_direktori2 <spasi> nama_direktorin


Oleh karena perintah dari soal meminta untuk menghapus semua direktori (folder) pada direktori [nama anda] (patricia) maka tinggal tersisan file image.jpg





TUGAS SISTEM OPERASI PRAKTIKUM
OLEH: PATRICIA DIANITA WIJAYA
NIM: 2011-810-016

JURUSAN TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER
UNIVERSITAS ESA UNGGUL

JAKARTA
2012



Sumber Soal: http://antimus.student.esaunggul.ac.id/?p=98


Thursday, June 14, 2012

Konstruktor


#include <iostream.h>
#include <conio.h>
#include <string.h>

class mahasiswa
{
    private:
        char nim[10];
        char nama[30];
        int nilai;
    public:
        mahasiswa();       //konstruktor
        ~mahasiswa();     //destruktor
        void tampil();
};

mahasiswa :: mahasiswa()
{
    cout<<"Konstruktor dijalankan..\n";
    strcpy(nim, "201081016");
    strcpy(nama, "Patricia Dianita Wijaya");
    nilai = 95;
}

mahasiswa :: ~mahasiswa()
{
    cout<<"Destruktor dijalankan...\n";
}

void mahasiswa :: tampil()
{
    cout<<"NIM : "<<nim;
    cout<<"\nNAMA : "<<nama;
    cout<<"\nNILAI : "<<nilai;
}

int main()
{
    mahasiswa mhs;
    mhs.tampil();
    getch();
}

INHERITANCE


#include<iostream>
#include<conio.h>
#include<string.h>
using namespace std;

class buku
{      private:
              char judul[35];
              char pengarang[25];
              long harga;
       public:
             buku (char *judul, char *pengarang, long harga);
             void info_buku(); };

class disket
{      private:
             char ukuran [25];
              long harga;
      public:
             disket(char *ukuran, long harga);
             void info_disket();
};

class paketbukudisket : public buku, public disket
{      private:
             long harga;
      public:
             paketbukudisket(char *judul, char *pengarang, long harga_buku, char *ukuran, long harga_disk);
             void info_paket();
};

int main()
{    paketbukudisket cpp("C++", "Alakadabra", 25000, "3 1/2 inci", 12000);
      cpp.info_paket(); }

buku::buku(char*judul, char *pengarang, long harga)
{                       strcpy(buku::judul, judul);
                        strcpy(buku::pengarang, pengarang);
                        buku::harga=harga; }

void buku::info_buku()
{     cout<<" Judul buku    : "<<judul<<endl;
       cout<<" Pengarang     : "<<pengarang<<endl;
       cout<<" Harga buku    : "<<harga<<endl; }

disket::disket(char *ukuran, long harga)
{                    strcpy(disket::ukuran, ukuran);
                     disket::harga = harga; }

void disket::info_disket()
{     cout<<" Ukuran disket : "<<ukuran<<endl;
       cout<<" Harga disket  : "<<harga<<endl; }

paketbukudisket::paketbukudisket(char *judul, char *pengarang, long harga_buku, char *ukuran, long harga_disket):
                                      buku(judul, pengarang, harga_buku),disket(ukuran, harga_disket)
{            harga = harga_buku + harga_disket; }

void paketbukudisket::info_paket()
{     info_buku();
      info_disket();

    cout<<" Harga Total   : "<<harga<<endl;
     getch(); }

Polimorfisme

1. Pewarisan Tunggal

Menggunakan virtual. Fungsinya, virtual yang dideklarasikan dalam suatu metode dalam kelas dasar, maka keadaan virtual tetap berlaku di seluruh kelas turunan meski tidak disebutkan kata virtual.

2. Pewarisan Jamak

Konsepnya sama dengan pada pewarisan tunggal, hanya saja, kata virtual harus disebutkan di setiap kelas dasar yang dirancang.

3. Pewarisan Jamak Virtual

Konsep tidak jauh berbeda. Kata virtual dipakai di kelas dasar yang dirancang sehingga metode tersebut dinamis.

Contoh program Polimorfisme


/*
Contoh program Polimorfisme
*/


#include <iostream>
#include <conio.h>
#include <string.h>


using namespace std;


class Manusia 
{
    protected:
    string nama;
    string alamat;
    public:
    Manusia(string nama, string alamat):nama(nama), alamat(alamat){}
   
    void judul()
    {
             cout<<"\n Kelas Manusia!"<<endl;
        }
    
    virtual void tampil_data() //menggunakan fungsi virtual
        {
            cout<<"\n =========================";
    cout<<"\n\t MANUSIA"<<endl;
    cout<<" =========================";
    cout<<"\n Nama     : "<<nama<<endl;
    cout<<" Alamat   : "<<alamat<<endl;
    cout<<" ========================="<<endl;
        }
};


class Mahasiswa : public Manusia
{
    private:
    string nim;
    string jurusan;
    public:
    Mahasiswa(string nim, string nama, string jurusan, string alamat):Manusia(nama,
    alamat),nim(nim),jurusan(jurusan){}
   
    void judul()
    {
             cout<<"\n Kelas Mahasiswa!"<<endl;
        }
    
    void tampil_data()
        {
    cout<<"\n =========================";
    cout<<"\n\t MAHASISWA"<<endl;
    cout<<" =========================";
    cout<<"\n NIM      : "<<nim<<endl;
    cout<<" Nama     : "<<nama<<endl;
    cout<<" Jurusan  : "<<jurusan<<endl;
    cout<<" Alamat   : "<<alamat<<endl;
    cout<<" ========================="<<endl;
    }
};


class Pegawai : public Manusia
{
    private:
    string nip;
    string jabatan;
    public:
    Pegawai(string nip, string nama, string alamat, string jabatan):Manusia(nama,
    alamat),nip(nip),jabatan(jabatan){}
   
    void judul()
    {
             cout<<"\n Kelas Pegawai!"<<endl;
        }
    
    void tampil_data()
        {
    cout<<"\n\n =========================";
    cout<<"\n\t PEGAWAI"<<endl;
    cout<<" =========================";
    cout<<"\n NIP      : "<<nip<<endl;
    cout<<" Nama     : "<<nama<<endl;
    cout<<" Alamat   : "<<alamat<<endl;
    cout<<" Jabatan  : "<<jabatan<<endl;
    cout<<" ========================="<<endl;
    }
};


int main()
{
Mahasiswa mhs1("201081016", "Patricia", "Teknik Informatika", "Jakarta");
Pegawai peg1("4321.8765.1234", "Budi", "Surabaya","Direktur");
Manusia *man;                           //definisi pointer ke objek berkelas manusia

    man = &mhs1;                               //menunjuk ke objek berkelas mahasiswa
man->judul();
    man->tampil_data();
    
man = &peg1;                                //menunjuk ke objek pegawai
man->judul();
    man->tampil_data();
    getch();
}

Fungsi Manipulasi String dalam C++


Fungsi Manipulasi String, String dapat dimanipulasi dengan aturan tertentu. Di mana bahasa C++ telah menyediakan semua ini ke dalam pustakanya. Berikut adalah fungsi-fungsi yang digunakan untuk melakukan manipulasi string :
  • Fungsi strcat, Fungsi strcat digunakan untuk menggabungkan dua string menjadi satu.
  • Fungsi strlen, Fungsi strlen digunakan untuk menghitung panjang karakter pada suatu string. strlen adalah fungsi yang bertipe data integer.
  • Fungsi strcpy, Fungsi strcpy digunakan untuk menyalin isi string ke suatu variabel.
  • Fungsi strupr, Fungsi strupr digunakan untuk mengubah semua karakter huruf yang terdapat pada suatu variabel menjadi huruf besar semua (Uppercase).
  • Fungsi strlwr, Fungsi strlwr digunakan untuk mengubah semua karakter huruf yang terdapat pada suatu variable menjadi huruf kecil semua (Lowercase).