Alvin's Blog

Just another Binusian blog site

Rangkuman Sistem Operasi Pert. 3-4

October6

Program adalah sekumpulan instruksi untuk melakukan sebuah tugas, sedangkan process adalah pengeksekusian program.

Karakteristik sebuah process:

  • identifier
  • state
  • priority
  • program counter
  • memory pointer
  • context data
  • I/O status information
  • accounting information

Cara membuat sebuah process

  • memberikan sebuah penanda (identifier) yang unik
  • mengalokasikan ruang untuk process
  • inisialisasikan process control block
  • membuat hubungan process yang tepat
  • memperluas struktur data lainnya

Kapan sebuah process dapat diakhiri?

  • ketika terdapat kegagalan input outpu
  • instruksi yang tidak sah
  • instruksi yang dibataskan
  • penyalahgunaan data
  • campur tangan sistem operasi
  • process induk diakhiri sehingga mengakhiri process anak

Suatu sistem operasi yang baik adalah sistem operasi yang mampu menunda (suspend) aplikasi yang sedang berjalan untuk aplikasi lain dengan prioritas yang lebih tinggi sehingga dapat menghemat penggunaan ram dan penggunaan CPU.

Process Management System Call –> fork()

  • membuat process baru (child)
  • pengeksekusian proses induk dan anak secara merangkap
  • setiap proses dapat merangkap dengan process lain membentuk hirarki proses
  • proses dapat menunggu hingga anaknya diakhiri

fork() memiliki tipe data int, artinya memiliki return value dengan kriteria

  • return -1 jika proses tidak berhasil
  • return 0 jika merupakan proses anak
  • return positive number jika process induk

Pada saat pengeksekusian, fork() membuat dua copy yang identik pada alamat memory sehingga process induk dan anak berjalan secara sendiri tanpa ketergantungan yang lain (independently). Secara umum, kita tidak dapat mengetahui kapan process induk berjalan terlebih dahulu atau sebaliknya. Semua itu tergantung pada algoritma penjadwalan (scheduling algorithm) yang digunakan oleh kernel.

Rangkuman Sistem Operasi Pert. 1-2

September29

Komponen utama sebuah komputer:

  • Processor
  • Memory utama (RAM)
  • Modul Input/Output
  • System bus

Interupt adalah cara komputer untuk mengeksekusi program yang prioritasnya lebih tinggi dibanding program yang lainnya.

Cache memory adalah memory yang terdapat pada processor yang berfungsi untuk meningkatkan kecepatan memory pada processor.

Tipe-tipe cache memory

  • L1 cache –> memory yang befungsi untuk menyimpan instruction dan data.
  • L2 cache –> memory cepat yang terdapat pada arsitektur komputer
  • L3 cache –> memory dengan akses tinggi untuk menjembatani motherboard dengan CPU

Operating System adalah program yang mengontrol eksekusi program aplikasi dengan tampilan agar lebih mudah dimengerti manusia.

File system adalah struktur logika yang digunakan untuk mengendalikan akses terhadap data yang ada pada harddisk. Mereka bertanggung jawab terhadap management file, manajemen penyimpanan file tambahan, mekanisme integritas file dan metode akses file.

Beberapa contoh file sistem yang umum:

  • UFS
  • HSFS
  • FAT32
  • NTFS
  • EXT2

Cara mengakses file name:

  • menggunakan absolute path name –> dimulai dari root hingga ke file yang dituju
  • menggunakan relative path name –> dimulai dari posisi sekarang

Kegiatan CB Interpersonal #4

May24

IMG_20150524_151909LOGO TFI HIGH RESS

Nama : Alvin Oktavianus

NIM : 1701293004

Isi Laporan

Minggu, 24 Mei 2015

Kegiatan kali ini adalah kegiatan kami yang terakhir. Jadi kami berdiskusi untuk melaksanakan kegiatan sebaik mungkin. Kami berangkat pada pukul 13.30 dari tempat berkumpul kmai yaitu Indomaret Point yang berlokasi di seberang kamus Anggrek Universitas Bina Nusantara. Kami tiba di panti pada pukul 13.45.

Seperti biasa, kami meminta tolong kepada ibu Basri selaku anggota Yayasan panti untuk mengumpulkan anak serta membukan aula panti untuk belajar. Kami mulai mengajar pada pukul 14.00. Pada kegiatan ini, 22 anak hadir dalam kegiatan belajar-mengajar kelompok kami.

Pada kesempatan ini, saya mengajar anak SD kelas 5 dan 6. Untuk anak SD kelas 5, saya mengajarkan mereka untuk mampu menghafalkan perkalian 1×1 hingga 26×26. Tujuannya adalah untuk mempercepat perhitungan matematika. Bagi siswa kelas 6 SD bernama Nur. Rencananya, saya ingin mengajarkan bahasa Inggris. Akan tetapi, Nur lebih senang belajar IPS untuk ujian sekolahnya. Saya memberitahu Nur tentang letak astronomis dan geologis Indonesia, memahami konsep ekspor dan import, memperjelas tentang ASEAN dan pembagian iklim.

Kami selesai mengajar pada pukul 15.00. Setelah selesai, kami membagikan Pizza sebagai makanan selingan. Setelah para siswa/i selesai makan, kami berfoto bersama dan pamit pulang. Kami pulang ke kos atau rumah masing-masing pada pukul 15.20.

Kegiatan CB Interpersonal #3

May24

20150502_5788LOGO TFI HIGH RESS

Nama : Alvin Oktavianus

NIM : 1701293004

Isi Laporan

Sabtu, 2 Mei 2015

Pada kesempatan kali ini, kami kembali mengajar para siswa/siswi yatim-piatu di Yayasan Khazanah Kebajikan. Kami memulai kegiatan dengan berkumpul bersama di Indomaret point jam setengah 2. Setelah semuanya berkumpul, kami berjalan ke lokasi sekitar pukul 13.30. Jalanan cukup bersahabat sehingga kami dapat tiba di lokasi pada pukul 13.45. Kami semua bersiap-siap dan mengumpulkan anak-anak.

Pengajaran pada hari ini lebih difokuskan kepada pengerjaan pekerjaan rumah (PR). Saya diberi kesempatan untuk membantu siswa SD kelas 5 mengerjakan PR matematika. Setelah selesai, saya memberikan sedikit materi tambahan serta menyuruh mereka untuk menghafalkan perkalian dari 1×1 hingga 20×20. Lalu saya melakukan kegiatan tanya jawab untuk memastikan jika mereka benar-benar bisa. Setelah selesai, saya membantu teman saya mengerjakan PR siswi kelas 8.

Pada pukul 15.40, kami semua selesai mengajar, karena saya dan beberapa teman saya berhalangan jika mengajar sampai sore. Kami semua berfoto bersama sebagai dokumentasi. Kami mengucapkan terima kasih kepada anak-anak atas waktunya untuk mau belajar serta membagi-bagikan biskuit sebagai simbol ucapan terima kasih.

Kegiatan CB Interpersonal #2

May24

IMG_20150419_171145_compress IMG_20150419_171908_CompressLOGO TFI HIGH RESS

 

Nama : Alvin Oktavianus

NIM : 1701293004

Isi Laporan

Minggu, 18 April 2015

Pada kesempatan kali ini, kami semua memiliki kesempatan untuk melaksanakan kegiatan mengajar. Kami bersama berkumpul di Indomaret Point depan kamus anggrek. Setelah semuanya berkumpul, kami berangkat menuju lokasi pukul 14.45. Kami tiba di panti pukul 15.00. Ketika kami tiba, ternyata ada kelompok mahasiswa dari universitas lain tiba terlebih dahulu untuk mengajar juga.

Kelompok mahasiswa tersebut diketuai oleh Erlangga. Saya bercerita tentang kelompok kami yang juga ingin mengajar siswa siswi. Eralangga mengatakan kalau dia memulai acara pada pukul 03.00. Anak-anak pun terlihat santai dan bermain. Lalu saya diskusikan kepada kelompok, bahwa kegatan kali ini cenderung kea rah cerita dan sharing. Saya sendiri mengumpulkan 2 anak SD untuk bercerita banyak hal, baik tentang ilmu pengetahuan umum maupun sejarah. Hujan juga mengguyur panti sehingga kami semakin yakin bahwa belajar materi eksak bukan diwaktu yang tepat.

Sekitar pukul 04.45, saya mengumpulkan anak-anak untuk bermain sulap. Saya meminta seutas tali panjang. Saya gunting tali tersebut dan tali bias kembali utuh. Anak-anak, kelompok kami, dan kelompok Erlangga terlihat kagum. Erlangga menambahkan canda supaya anak-anak lebih senang. Lalu saya mengajarkan kepada anak-anak cara bermain sulap seperti saya, sehingga tali yang sudah digunting bias kembali bersatu menjadi tali yang utuh.

Pada pukul 05.00, hujan sudah reda. Kami dan kelompok Erlangga mengumupulkan anak-anak utnuk berdoa bersama dan berfoto bersama. Kami mengucapkan terima kasih kepada Erlangga karena mau bergabung bersama kami untuk mengajar dan menyenangkan anak-anak.

Sekitar pukul 05.15, kami bersama-sama pulang ke rumah atau kosan masing-masing. Kami tidak sempat apmi ke Bunda Anti karena beliau sedang tidak di rumah. Pada malamnya, saya secara pribadi menelpon Bunda untuk mengucapkan terima kasih karena mengizinkan kami untuk mengajar.

Kegiatan CB Interpersonal #1

May24

20150418_369LOGO TFI HIGH RESS

Nama : Alvin Oktavianus

NIM : 1701293004

Isi Laporan

Sabtu, 17 April 2015

Pada hari sabtu, setelah kelas Intelegensia Semu, saya bersama anggota kelompok pergi ke panti asuhan Yayasan Khazanah Kebajikan yang terletak di Joglo, Jakarta Barata. Sebelum kami pergi ke lokasi kami bersama memebeli cemilan berupa kue yang teletak di sekitar jalan syahdan. Kami berangkat dari Binus tepat jam 2 siang dan tiba di lokasi pukul 02.30.

Ketika kami tiba di lokasi, kami mengumpulkan anak-anak ke panti. Kami berkenalan terlebih dahulu ke anak-anak. Mereka terlihat pasif mungkin karena kami adalah orang asing yang mereka tidak kenal. Setelah kami berkenalan sekitar 10 menit, kami membagi kelompok menjadi 6 kelompok (satu anggota kelompok kami mengajar 1 kelompok sekitar 3-4 orang). Saya sendiri mengajar kelompok anak kelas 5 SD. Mereka bernama Eva dan Akbar. Mereka belajar matematika. Ketika saya ajar, mereka cenderung terlihat antusias dan mmapu mengikuti ajaran dan arahan saya. Terkadang saya bercerita sedikit agar mereka tidak jenuh.

Setelah pukul 03.30, kami selesai mengajar. Kami mengumpulkan anak-anak untuk acara penutupan. Kami sekelompok mengucapkan terima kasih atas waktunya dan kami juga mengajak mereka untuk berfoto bersama. Setelah berfoto, kami menyuruh anak-anak untuk berbaris dan kami membagikan kue yang telah kami beli sebelumnya.

Sekitar pukul 03.45, kami semua berangkat ke rumah Bunda Anti (Ketua Yayasan Khazanah Kebajikan) untuk pamit. Kami bercerita kepada beliau tentang kegiatan serta antusiasme anak-anak dalam kegiatan belajar-mengajar. Bunda juga berterima kasih kepada kelompok kami karena telah meluangkan waktunya

Proposal Kegiatan CB Interpersonal

May11

PROPOSAL

CB : INTERPERSONAL DEVELOPMENT (CB432)

 

 

Oleh :

Alvin Otavianus 1701293004

Ficiell Fernanda 1701295363

Giovanni Reinard 1701294114

Lilis Sugianti 1701306562

Melina Halipah 1701304935

Octavianus 1701293660

Patrick Aditya 1701293490

 

UNIVERSITAS BINA NUSANTARA

Jakarta

2015

 

 

  1. LATAR BELAKANG

 

Sebagai bentuk rasa peduli kami akan keadaan sekitar, maka sebagai generasi muda ingin mengadakan sebuah bentuk kegiatan yang dapat berguna bagi masyarakat sekitar. Banyak pihak yang tidak menyadari bahwa di sekitar kita terdapat orang-orang yang sangat membutuhkan bantuan dari kita. Dan dengan keterkaitan antara nilai-nilai luhur kemanusiaan tersebut maka kami merencanakan untuk mengadakan sebuah bakti sosial ke Panti Asuhan.

Kegiatan bhakti sosial ini sendiripun, sebenarnya merupakan bentuk kepedulian dan tanggung jawab sosial kita untuk dapat memberikan manfaat terhadap masyarakat, khususnya di lingkungan Panti Asuhan. Atas dasar tersebut itulah kami siap untuk mewujudkan kegiatan tersebut. Dengan dukungan bapak/ibu beserta semangat kami yang ingin mengabdi kepada masyarakat, bhakti sosial ini merupakan suatu bentuk bantuan, yang walaupun kecil namun sangat berguna untuk membantu meringankan beban Panti Asuhan. Kegiatan Bhakti Sosial ini telah berlangsung secara periodik dan kami jalankan sesuai dengan kemampuan maksimal kami. Kegiatan ini juga menjelma menjadi sebuah jembatan antara kepedulian kami, sebagai masyarakat, terhadap mereka yang membutuhkan terutama pada panti-panti asuhan.

 

  1. TUJUAN
    Meningkatkan motivasi belajar anak – anak panti asuhan.
  2. Memberi pengetahuan kepada anak – anak panti asuhan.
  3. Membantu pihak pengelola panti asuhan dengan mengembangkan dan memotivasi anak asuh, sehingga memiliki kepercayaan pada diri sendiri.
  4. Berbagi kebahagian dengan anak-anak panti asuhan dengan permainan-permainan.

 

 

  • WAKTU DAN TEMPAT

Waktu       : Sabtu, 18 April 2015

Minggu, 19 April 2015

Sabtu, 3 Mei 2015

Minggu, 9 Mei 2015

 

Tempat      : Yayasan Khazanah Kebajikan

Vila Kelapa Dua.

Jln. Janur 1 blok A no. 23, Jakarta Barat.

 

  1. SUSUNAN ACARA

(data terlampir)

 

  1. SUSUNAN KEPANITIAAN
  • Ketua :  Alvin Oktavianus ( 1701293004 )
  • Sekretatis :  Lilis Sugianti ( 1701306562 )
  • Bendahara :  Ficiell Fernanda ( 1701295363 )
  • Seksi Acara :  Giovanni Reinard ( 1701294114 )

Melina Halipah ( 1701304935 )

  • Seksi Dokumentasi :  Octavianus ( 1701293660 )

Patrick Aditya ( 1701293490 )

 

 

 

 

 

 

 

 

 

 

  • PENUTUP

Demikian proposal ini kami ajukan, besar harapan kami kegiatan

ini dapat terlaksana dengan lancar dan sesuai dengan rencana yang telah disususn serta tercapai pula tujuan dan sasaran yang kami tentukan. Akhir kata, kami mengucapkan terima kasih.

 

Jakarta, 13 April 2015

 

 

Panitia Pelaksana

Binus University

 

 

 

Alvin Oktavianus                                                                      Lilis Sugianti
Ketua Pelaksana                                                                     Sekretaris

 

Menyetujui,

 

 

 

 

Catarina Manurung S. H, M. M

Dosen CB Interpersonal

 

 

 

 

Tugas Double Linked List

March20
#include<stdio.h>
#include<stdlib.h>
#pragma warning(disable: 4996)
typedef struct tnode{
 struct tnode *next;
 struct tnode *prev;
 int x;
};
struct tnode *head, *connector, *temp;
int main(){
 // fungsi untuk mencetak angka 1 dan 3 dalam bentuk double linked list
 head = (struct tnode*)malloc(sizeof(struct tnode));
 head->next = NULL;
 head->prev = NULL;
 head->x = 1;
 connector = head;
 connector->next = (struct tnode*)malloc(sizeof(struct tnode));
 connector = connector->next;
 connector->next = NULL;
 connector->x = 3;
 connector->prev = head->next;
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 printf("%d ", connector->x);
 connector = connector->next;
 }
 printf("%d", connector->x);
 }
// fungsi untuk menambahkan angka 2 diantara 1 dan 3
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 if(connector->x == 1 && connector->next->x == 3){
 temp = (struct tnode*)malloc(sizeof(struct tnode));
 temp->x = 2;
 temp->next = connector->next;
 temp->prev = head->next;
 connector->next = temp;
 }
 connector = connector->next;
 }
 }
 printf("\n\n");
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 printf("%d ", connector->x);
 connector = connector->next;
 }
 printf("%d", connector->x);
 }
// fungsi untuk menambahkan angka 0 didepan liat data
 temp = (struct tnode*)malloc(sizeof(struct tnode));
 temp->next = head;
 temp->x = 0;
 temp->prev = NULL;
 head = temp;
 printf("\n\n");
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 printf("%d ", connector->x);
 connector = connector->next;
 }
 printf("%d", connector->x);
 }
// fungsi untuk mencetak angka 5 di paling akhir
 connector->next = (struct tnode*)malloc(sizeof(struct tnode));
 connector = connector->next;
 connector->next = NULL;
 connector->x = 5;
 connector->prev = head->next->next->next->next->next;
 printf("\n\n");
 connector = head;
 if(connector != NULL){
 while(connector->next != NULL){
 printf("%d ", connector->x);
 connector = connector->next;
 }
 printf("%d", connector->x);
 }
 printf("\n\n\n");
 printf("Created by Alvin Okavianus\n");
 printf("1701293004\n");
 printf("32PPT\n\n");
 system("PAUSE");
 return 0;
}

Kuis dan TM 2

March17

TM 02

  1. Copy constructor suatu klas dieksekusi jika obyek klas di-copy dengan mekanisme di bawah ini kecuali

a. direct assignment                           b. initialization

c. passing by value                              c. return by value

  1. Fungsi anggota yang otomatis di-create oleh kompilator meskipun ia tidak secara eksplisit ditulis oleh pemrogram dalam definisi klas adalah opsi-opsi di bawah ini kecuali

a. default constructor                                    b. copy constructor

c. destructor                                        d. overloaded constructor

  1. Level akses utility function  atau helper function suatu klas adalah

a. public           b. protected                 c. private                    d. inline

  1. Untuk class X, sintaks copy constructor adalah

a. X(& X)                                            b. X(const X&)

c. X(const &X)                                   d. X(X &)

5. C++ class mempunyai

  • satu konstruktor dan satu destructor
  • lebih dari satu konstruktor dan satu destructor
  • satu konstruktor dan lebih dari satu destructor
  • lebih dari satu konstruktor dan lebih dari satu destructor

6. Apa keluaran dari penggalan program berikut ini:

class Rational {

public:

Rational() { cout << “OBYEK LAHIR.\n”; }

~Rational() { cout << “OBYEK MATI. \n”; }

private:

int num, den;

};

main() {

{   Rational x;

cout << “SEKARANG x HIDUP.\n”;

}

cout << “ANTAR BLOK.\n”;

{   Rational y;

cout << “SEKARANG y HIDUP.\n”;

}

}

Keluaran dari penggalan program tersebut ialah:

OBYEK LAHIR.

SEKARANG x HIDUP.

OBYEK MATI

ANTAR BLOK.

OBYEK LAHIR.

SEKARANG y HIDUP.

OBYEK MATI.

7. Uraikan apa yang kamu ketahui tentang constructor, user defined constructor, default constructor, parameterized constructor,  constructor initialization list, copy constructor dan destructor.

  • Constructor adalah sebuah fungsi yang otomatis dipanggil setiap kali melakukan instasiasi terhadap suatu klas.
  • User defined constructor adalah constructor yang dibuat oleh user.
  • Default constructor adalah constructor standar yang telah disediakan oleh library iostream.
  • Parameterized constructor adalah parameter-parameter dalam suatu constructor yang telah diinisialisasi oleh user.
  • Constructor initialization list adalah daftar-daftar nilai constructor yang akan diinisialisasi.
  • Copy constructor adalah penggandaan sebuah constructor.
  • Destructor adalah fungsi khusus yang dijalani secara otomatis setelah obyek punah.

8. Uraikan apa yang kamu ketahui tentang default arguments di C++. Sebutkan apa saja  yang dapat digunakan sebagai devalut value. Mengapa nilai constant tidak dapat digunakan sebagai default value untuk reference variable?

  • Default arguments adalah sebuah constructor yang secara otomatis disediakan library iostream meskipun programmer tidak membuat constructor dalam class.
  • Semua dapat digunakan sebagai default value kecuali nilai constant.
  • Nilai constant tidak dapat digunakan karena nilai constant tidak dapat diubah sama sekali. Lain halnya dengan nilai default yang dapat diubah oleh user jika user memlukannya.

9. Apa yang dimaksud dengan function overloading? Kriteria apa yang digunakan untuk menyatakan bahwa dua fungsi dengan nama yang sama adalah berbeda satu sama lain.

  • Function overloading merupakan suatu function yang memiliki parameter, dan function tersebut dapat memiliki nama function yang sama dengan yang lainnya.
  • Syaratnya adalah dengan jumlah parameter yang berbeda.

10. Banyak penulis buku menyatakan bahwa untuk  class X paling sedikit  mempunyai satu constructor yaitu default constructor dengan prototype X(). Tetapi John Hubbard dalam bukunya Programming with C++ menyatakan bahwa setiap class X paling sedikit mempunyai dua constructor yaitu default X() dan copy constructor yang prototipe sintaksnya adalah X (const X & ), fungsi anggota dengan satu parameter dan pass by constant reference.

Tugas Anda:

a. Kapan copy constructor dieksekusi?

Ketika sebuah function memanggil copy constructor tersebut.

b. Untuk penggalan kode berikut berapa kali copy constructor dieksekusi?

1 kali

class Rational {

public :   Rational(int n, int d) : num(n), den (d) { }

Rational(const Rational  & r) : num(r.num), den(r.den)

{ cout << “COPY CONSTRUCTOR CALLED\n”;}

private: int num, den;

};

Rational f(Rational r) {

Rational s = r;

return s;

}

main() {

Rational(22,7);

Rational y(x);

f(y);

            }

I AM PROUD AS A BINUSIAN

Tugas Linked List

March13
#include<stdio.h>
#include<stdlib.h>
#pragma warning(disable: 4996) //menggunakan visual studio 2013

/*Created by
  Alvin Oktavianus
  1701293004
  32PPT*/

struct tnode{
    int x;
    struct tnode *next;
};

struct tnode *head = NULL, *connector = NULL;

int main(){
    int a, cout=0;
    do{
        system("cls");
        connector = head;
        if (connector != NULL){
            while (connector->next != NULL){
                printf("%d ", connector->x);
                if (a > 0 || (a + 1) < 10){
                    printf("-> ");
                }
                connector = connector->next;
            }
            printf("%d", connector->x);
        }
        printf("\n");
        if (cout != 10){
            printf("input data : ");
            scanf("%d", &a); fflush(stdin);
        }
        if (cout == 0){
            head = (struct tnode*)malloc(sizeof(struct tnode));
            head->next = NULL;
            head->x = a;
            connector = head;
        }
        else{
            connector->next = (struct tnode*)malloc(sizeof(struct tnode));
            connector = connector->next;
            connector->next = NULL;
            connector->x = a;
        }
        cout++;
    } while (cout < 11);
    printf("\n\n");
    system("PAUSE");
    return 0;
}
« Older EntriesNewer Entries »