Tampilkan postingan dengan label Organisasi Komputer dan SIstem Operasi. Tampilkan semua postingan
Tampilkan postingan dengan label Organisasi Komputer dan SIstem Operasi. Tampilkan semua postingan

Senin, 19 Juni 2017

Nilai Akhir Praktikum Orkom dan Jarkom

Nilai Praktikum dan Tugas Akhir Orkom Jarkom

Orkom kelompok G:
Anggota :
Dwiky Semuel
NIM: 064001600018
Muhammad Iqbal H
NIM: 064001600005
Niko Putra
NIM: 065001600008
Yusuf Alvino Riondi
NIM: 064001600014

1.Nilai praktikum = 93
2.Nilai TM1 = 78

3.Nilai TM2 = 90
Nilai rata2 = (93+78+90):3 = 87


Jarkom kelompok I:
Anggota: 
Dwiky Semuel
NIM: 064001600018
Muhammad Iqbal H
NIM: 064001600005
Niko Putra
NIM: 065001600008
Yusuf Alvino Riondi
NIM: 064001600014

1.Nilai praktikum = 90,29
2.Nilai TM1= 72
Nilai rata2 = (90,29+72):2 = 81,147

Sabtu, 17 Juni 2017

Tugas Mandiri Organisasi Komputer dan Sistem Operasi 2: Komunikasi Antar Thread

LAPORAN TUGAS MANDIRI 
ORGANISASI KOMPUTER DAN SISTEM OPERASI
KOMUNIKASI ANTAR THREAD


Disusun Oleh Kelompok G :



Dwiky Semuel
NIM: 064001600018

Muhammad Iqbal
NIM: 064001600005

Niko Putra
NIM: 065001600008

Yusuf Alvino Riondi     
NIM: 064001600014


Teknik Informatika
Fakultas Teknologi Industri
Universitas Trisakti
Jakarta – Indonesia
2017














DESKRIPSI
Membuat program komunikasi antar thread menggunakan Linux versi Ubuntu 64-bit.

KOMPETENSI DASAR
1. Memahami Komunikasi antar Thread dalam sistem operasi Linux Ubuntu 64-bit.
2. Memahami fungsi Komunikasi antar Thread
3. Memahami bahasa pemrograman pada terminal Linux

TEORI SINGKAT
Thread adalah unit dasar dari utilitas CPU. Di dalamnya terdapat ID thread, program counter, register, dan stack. Dan saling berbagi dengan thread lain dalam proses yang sama.
Dalam sebuah thread pada sebuah proses terdapat :
Thread state
Saved Thread Context saat tidak berjalan (Individual Program Counter)
Execution Stack
Local Variables


Akses ke memory dan resource yang dimiliki oleh prosesnya alamat atau IP address digunakan secara bersama-sama dari proses yang menciptakannya. Memiliki akses langsung ke segmen data dari prosesnya. Dapat saling berkomunikasi dengan thread lain dalam satu proses. Perubahan pada thread utama seperti pembatalan atau perubahan prioritas dapat mempengaruhi tingkah laku thread lain dalam satu proses. Ciri-ciri Proses:


Memiliki ruang/space sendiri di memori untuk menampung process image
Tidak dapat mengakses ruang lain di memori yang menjadi milik proses lain
Proses mencakup program counter, yaitu sebuah stack untuk menyimpan alamat dari instruksi yang selanjutnya akan di eksekusi dan di registrasi.
Memiliki ruang alamat atau IP address masing-masing
Dari satu proses dengan proses lainnya harus menggunakan komunikasi.


Keuntungan Thread
Waktu pembuatan yang lebih cepat
Waktu pemberhentian yang lebih cepat 

Waktu pergantian antar thread lebih cepat daripada antar proses
Komunikasi antar thread lebih efisien

LAB SETUP
·         1 buah PC.
·         Sistem Operasi Linux (Ubuntu 64-bit).

LANGKAH-LANGKAH

1. Buka LINUX pada VMware. Ketikkan source code mengenai Komunikasi antar Thread lewat Text Editor seperti berikut.







2. Lalu save di Home dengan nama threadd.c. Lalu buka terminal pada LINUX, lalu ketikkan kode berikut: $ gcc threadd.c -o threaddd.c -lpthread, tekan enter.


3. Setelah selesai, masukkan command berikut: $ ./threaddd.c, lalu tekan enter.


4. Maka akan keluar output seperti berikut. Bila keluar seperti yang dibawah ini, maka anda berhasil menjalankan komunikasi antar thread via LINUX Ubuntu 64-bit.




KESIMPULAN
Thread adalah unit dasar dari utilitas CPU. Di dalamnya terdapat ID thread, program counter, register, dan stack. Dan saling berbagi dengan thread lain dalam proses yang sama. dengan apa yang kita kerjakan diatas, maka anda telah berhasil menjalankan Komunikasi antar Thread.

Untuk melihat video, klik disini.

Minggu, 11 Juni 2017

Tugas Mandiri Organisasi Komputer dan Sistem Operasi 1: TASM

LAPORAN TUGAS MANDIRI 
ORGANISASI KOMPUTER DAN SISTEM OPERASI
TASM



Disusun Oleh :

  
Nama : Dwiky Semuel
Nim : 064001600018

Teknik Informatika
Fakultas Teknologi Industri
Universitas Trisakti
Jakarta – Indonesia
2017
















DESKRIPSI
Membuat program Kartu Nama menggunakan bahasa pemrograman (assembly) via TASM
KOMPETENSI DASAR
1. Memahami TASM dalam sistem operasi Microsoft Windows 7 32-bit.
2. Memahami fungsi TASM.
3. Memahami bahasa asembly.
TEORI SINGKAT
Turbo Assembler (TASM) merupakan perangkat lunak bahasa pemrograman Assembly yang dikembangkan Borland untuk komputer personal yang kompatibel dengan IBM, umumnya berbasis prosesor x86. Perangkat lunak ini diperdagangkan oleh Borland sebagai sebuah produk mandiri, atau dipaketkan bersama produk perangkat lunak bahasa pemrograman tingkat tinggi yang juga dikembangkan Borland, biasanya produk untuk tingkat mahir seperti (Borland Pascal, atau Borland C++), dan memiliki integrasi yang sangat baik dengan bahasa-bahasa pemrograman tingkat tinggi tersebut. Dengan berakhirnya era kejayaan keluarga Turbo, Turbo Assembler saat ini sudah tidak lagi dikembangkan oleh Borland.

LAB SETUP
·         1 buah PC.
·         Sistem Operasi Microsoft (Windows 7 32-bit).
      LANGKAH-LANGKAH
1. Download dulu file TASM diinternet. File tersebut berbentuk file rar, lalu extract ke C:/Users/Niko/. Bila sudah selesai, maka akan mucnul seperti gambar dibawah ini.

 2. Setelah itu, masuk ke Notepad. Buatlah source code berdasarkan bahasa Assembly dengan baik dan benar.


3. Setelah selesai membuat source code, Simpan file lewat Save as. Lalu pilih kedalam directory TASM yang ada pada Local Disk C:. Jangan lupa untuk memberi nama file sesuka hati ditambah ".asm" dibelakangnya.

4. Setelah menyimpan source code. Buka command prompt. Maka akan muncul tampilan seperti berikut ini.


5. Setelah itu, ketik cd tasm untuk mengganti directory ke folder TASM yang kita taruh pada Local Disk C: sebelumnya.


6. Ketik "tasm nama_file" untuk mengcompile file yang tadi kita buat lewat notepad.


7. Apabila output yang keluar seperti yang diatas, lanjutkan dengan mengetik "tlink/t nama_file" Command ini berfungsi untuk menjalankan file kita tadi.


8. Apabila output yang keluar seperti yang diatas, lanjutkan dengan mengetik  "nama_file" Command ini berfungsi untuk  mengeksekusi program .exe yang kita buat. Apabila berhasil, maka akan keluar output sebagai berikut.

9. Apabila output yang keluar seperti yang diatas, lanjutkan dengan mengisi kalimat sesuai keinginan, maka akan menghasilkan output seperti di bawah.

Untuk video, klik disini
DESKRIPSI
Membuat program Kartu Nama menggunakan bahasa pemrograman (assembly) via TASM

KOMPETENSI DASAR
1. Memahami TASM dalam sistem operasi Microsoft Windows 7 32-bit.
2. Memahami fungsi TASM.
3. Memahami bahasa asembly.

TEORI SINGKAT
Turbo Assembler (TASM) merupakan perangkat lunak bahasa pemrograman Assembly yang dikembangkan Borland untuk komputer personal yang kompatibel dengan IBM, umumnya berbasis prosesor x86. Perangkat lunak ini diperdagangkan oleh Borland sebagai sebuah produk mandiri, atau dipaketkan bersama produk perangkat lunak bahasa pemrograman tingkat tinggi yang juga dikembangkan Borland, biasanya produk untuk tingkat mahir seperti (Borland Pascal, atau Borland C++), dan memiliki integrasi yang sangat baik dengan bahasa-bahasa pemrograman tingkat tinggi tersebut. Dengan berakhirnya era kejayaan keluarga Turbo, Turbo Assembler saat ini sudah tidak lagi dikembangkan oleh Borland.

LAB SETUP
·         1 buah PC.
·         Sistem Operasi Microsoft (Windows 7 32-bit).


      LANGKAH-LANGKAH
1. Download dulu file TASM diinternet. File tersebut berbentuk file rar, lalu extract ke C:/Users/Niko/. Bila sudah selesai, maka akan mucnul seperti gambar dibawah ini.


 2. Setelah itu, masuk ke Notepad. Buatlah source code berdasarkan bahasa Assembly dengan baik dan benar.


3. Setelah selesai membuat source code, Simpan file lewat Save as. Lalu pilih kedalam directory TASM yang ada pada Local Disk C:. Jangan lupa untuk memberi nama file sesuka hati ditambah ".asm" dibelakangnya.


4. Setelah menyimpan source code. Buka command prompt. Maka akan muncul tampilan seperti berikut ini.


5. Setelah itu, ketik cd tasm untuk mengganti directory ke folder TASM yang kita taruh pada Local Disk C: sebelumnya.


6. Ketik "tasm nama_file.asm" untuk mengcompile file yang tadi kita buat lewat notepad.


7. Apabila output yang keluar seperti yang diatas, lanjutkan dengan mengetik "tlink/t nama_file.asm" Command ini berfungsi untuk membuat file bertipe ".obj" untuk file kita tadi.


8. Apabila output yang keluar seperti yang diatas, lanjutkan dengan mengetik "tlink nama_file.obj" Command ini berfungsi untuk membuat file yang kita buat menjadi sebuah program yang siap dieksekusi atau ".exe"



9. Apabila output yang keluar seperti yang diatas, lanjutkan dengan mengetik "nama_file.exe" Command ini berfungsi untuk mengeksekusi program .exe yang kita buat. Apabila berhasil, maka akan keluar output sebagai berikut.


Untuk video (praktikum sendiri), klik disini.
Untuk video (kelompok), klik disini.

Sabtu, 03 Juni 2017

Laporan Organisasi Komputer dan Sistem Operasi 12: Thread

LAPORAN ORGANISASI KOMPUTER DAN SISTEM OPERASI
THREAD




Disusun Oleh Kelompok G : 
Dwiky Semuel
NIM: 064001600018

Muhammad Iqbal
NIM: 064001600005

Niko Putra
NIM: 065001600008

Yusuf Alvino Riondi     
NIM: 064001600014





Teknik Informatika
Fakultas Teknologi Industri
Universitas Trisakti
Jakarta – Indonesia
2017

DESKRIPSI
Membuat thread dengan vi editor di Linux

KOMPETENSI DASAR
1. Memahami Thread dalam sistem operasi Linux
2. Memahami fungsi Call-Clone
3. Memahami Interface pthread
4. Memahami Mutex di Linux

TEORI SINGKAT
Thread adalah eksekusi multiple path yang dijalankan secara simultan di dalam memori bersama, sehingga akses ke sumberdaya proses dapat dilakukan bersamaan, seperti deksripsi file dan penanganan sinyal. Multithreading adalah kemampuan sistem operasi untuk mendukung adanya beberapa thread di dalam sebuah proses. Sistem operasi terdahulu seperti MS DOS tidak mengenal konsep multiproses maupun multithread sehingga hanya dapat menjalankan satu proses dan setiap proses adalah sebuah thread.

LAB SETUP
·         1 buah PC
·         Sistem Operasi Linux (Ubuntu)

FUNGSI DASAR PTHREAD
Kami buat file thrdcreat.c menggunakan vi editor dengan mengetikkan:
$ vi thrdcreat.c

Kemudian kami tekan Esc lalu kami ketikkan :wq untuk menyimpan codingan tersebut
Lalu kami kompilasi thrdcreat.c dengan menggunakan gcc dengan mengetik:
$ gcc thrdcreat.c –o thrdcreat1.c –lpthread



Lalu kami eksekusi dengan mengetik:
$ ./thrdcreat1.c



Task1 dan Task2 melaksanakan tugas dimulai dengan hitungan nol secara bersamaan. Task2 mengerjakan tugas selama 5 hitungan (dimulai dari 0 kemudian 1 hingga 4) jika sudah selesai akan dilanjutkan untuk melaksanakan Task1. Task1 mengerjakan tugas selama 5 hitungan (dimulai dari 0 kemudian 1 hingga 4) sehingga dalam melaksanakan 2 buah tugas dibutuhkan 10 iterasi.

PEMBATALAN PTHREAD
Kemudian kami membuat thrdcancel.c menggunakan vi editor dengan mngetikkan:
$ vi thrdcancel.c

Kemudian kami tekan Esc lalu kami ketikkan :wq untuk menyimpan codingan tersebut.

Lalu kami kompilasi thrdcancel.h dengan menggunakan gcc dengan mengetik:
$ gcc thrdcancel.h –o thrdcancel1.h –lpthread


Lalu kami eksekusi dengan mengetik:
$ ./thrdcancel1.h


Task1 dan Task2 melaksanakan tugas dimulai dengan hitungan nol secara bersamaan. Task2 mengerjakan tugas selama 5 hitungan (dimulai dari 0 kemudian 1 hingga 4) jika sudah selesai akan dilanjutkan untuk melaksanakan Task1. Task1 mengerjakan tugas selama 5 hitungan (dimulai dari 0 kemudian 1 hingga 4) sehingga dalam melaksanakan 2 buah tugas dibutuhkan 10 iterasi.

PEMAKAIAN MUTEX DASAR
Kemudian kami membuat mutex.c menggunakan vi editor dengan mengetikkan:
$ vi mutex.c

Kemudian kami tekan Esc lalu kami ketikkan :wq untuk menyimpan codingan tersebut.

Lalu kami kompilasi mutex.c dengan menggunakan gcc dengan mengetik:
$ gcc mutex.c –o mutex1.c –lpthread


Lalu kami eksekusi dengan mengetik:
$ ./mutex1.c




Indeks thread melakukan increment pada counter sedangkan monitor melakukan pengecekan nilai counter. Waktu akhir adalah NULL + 30 detik, 30 detik merupakan panggilan waktu untuk melakukan ticks, sehingga setiap ticks dilakukan setiap 3 detik. 3 kali 10 iterasi.

Mutex Cepat (Fast Mutex atau Futex/Simple Mutex):
Sebuah mutex sederhana adalah default, yang paling sederhana (dan karena itu paling cepat) pelaksanaan mutex. Memiliki karakteristik:
·         Ini dapat dikunci hanya sekali, tapi ini tidak dicek. Jika suatu thead mencoba untuk mengunci mutex kedua kalinya, itu deadlock.
·         Ini tidak terdefinisi apa yang terjadi jika thread mencoba untuk membuka mutex yang dikunci oleh thread lain.

Mutex Rekursive:
Sebuah mutex rekursif adalah mutex yang dapat dikunci beberapa kali, dan memelihara counter kunci, jumlah yang sama panggilan unlocking harus digunakan sebelum mutex akan benar-benar dibuka.
Sebuah mutex rekursif tidak harus memeriksa kesalahan, jika thread lain mencoba untuk membuka mutex yang dikunci oleh thread lain, hasilnya tidak terdefinisi.

Mutex error-checking:
Mutex error-checking adalah mutex yang memeriksa untuk kondisi error (yang membuatnya lebih lambat dan lebih kompleks daripada default, mutex sederhana).
Memiliki karakteristik:
·         Ini dapat dikunci hanya sekali dan aturan ini dicentang. Jika suatu thread mencoba untuk mengunci beberapa kali, hal itu akan error (EDEADLK).
·         Ini menjamin bahwa hanya Thread penguncian dapat membukanya, jika thread lain mencoba untuk membukanya, akan mendapat error (EPERM).

EDEADLK (Deadlock Avoided)
Kode keselahan EDEADLK dihasilkan ketika panggilan sinkronisasi terkait digunakan dengan cara yang akan menyebabkan deadlock, dan sistem mampu mendeteksi ini.

EPERM (Operation not permitted)
Kesalahan kode ini dihasilkan pada upaya untuk melakukan operasi yang perlu izin khusus yang tidak memiliki proses pemanggilan.

DAFTAR CEKLIST
NO.
NAMA
CEK
1.
Membuat thread dengan vi editor di Linux
 Check

FORM FEEDBACK
NO.
ELEMEN KOMPETENSI
TINGKAT KETERTARIKAN
TINGKAT KESULITAN
1.
Membuat thread dengan vi editor di Linux.
 Baik
Baik 

KESIMPULAN
       Dengan menggunakan Thread dari pada proses kita mendapat beberapa keuntungan antara lain:
                1. membuat thread baru lebih cepat daripada membuat proses baru.
                2. menghentikan thread  lebih cepat daripada menghentikan proses.
                3. waktu untuk penghentian thread lebih cepat dibandingkan pergantian proses.
    4. komunikasi antar thread lebih cepat karena berada dalam satu proses sehingga tidak                 memerlukan intervensi dari kernel.

Hal ini berguna bagi sistem operasi karena dengan banyak control thread proses dapat melakukan lebih dari satu pekerjaan pada waktu yang sama.

Untuk melihat video, klik disini.
website hosting in karachi