Anda di halaman 1dari 6

LAPORAN SISTEM OPERASI

PTHREAD

Oleh :
Nindya Viani (1406532002)
Stella Gabriella Apriliani (1406532072)
Teknik Komputer 2014

FAKULTAS TEKNIK
UNIVERSITAS INDONESIA
DEPOK
MARET 2016

1
1. Pertama-tama, user menginstall Code-Blocks pada Linux untuk dapat menjalankan simulasi
program Pthread. Tersedia pada Ubuntu Software Center. (Dibuat bersama di dalam Linux pada
laptop Nindya)

2. Berikut kode program yang dibuat (terlampir dengan screenshot juga) :


#include<stdio.h>
#include<string.h>
#include<pthread.h>
#include<stdlib.h>
#include<unistd.h>

pthread_t tid[2];

void* doSomeThing(void *arg)


{
unsigned long i = 0;
pthread_t id = pthread_self();

if(pthread_equal(id,tid[0]))
{
printf("\n Thread pertama sedang diproses \n");
}
else
{

2
printf("\n Thread kedua sedang diproses \n");
}

for(i=0; i<(0xFFFFFFFF);i++);

return NULL;
}

int main(void)
{
int i = 0;
int err;

while(i < 2)
{
err = pthread_create(&(tid[i]), NULL, &doSomeThing, NULL);
if (err != 0)
printf("\n Tidak bisa membuat Thread :[%s]", strerror(err));
else
printf("\n Thread dibuat dengan sukses \n");

i++;
}

sleep(5);
return 0;
}

3
4
3. Setelah selesai membuat program, dijalankan pada terminal dan hasilnya adalah seperti
berikut

5
Adapun analisis dari source code tersebut adalah sebagai berikut :

 5 “#include” adalah library yang dibutuhkan untuk membuat Pthread.


 Pthread_tid adalah untuk membuat identitas dari pthread tersebut (thread id), hal ini sangat
penting karena program yang akan dijalankan harus mengidentifikasi identitas terlebih
dahulu.
 Di dalam program inti (int main) digunakan fungsi pthread_create yang merupakan
langkah untuk membuat pthread. Di dalamnya terdapat thread id dan fungsi yang nantinya
akan dilakukan oleh thread (Tertulis dalam &doSomeThing)
 Selain program inti, buat juga fungsi yang akan dijalankan tersebut (void
*doSomeThing(void *arg)) disinilah pthread akan dibuat dan diproses lebih lanjut.
 Sleep berfungsi sebagai delay dari proses yang ada.
 Setelah proses dijalankan, maka akan dicetak sesuai dengan kalimat yang ditulis user dan
akan ada cetakan bahwa thread tersebut telah berhasil dibuat ataupun tidak. Susunan hasil
pemrograman yang didahului oleh sukses kemudian proses mengindikasikan terdapat
kesalahan dalam kode yang dibuat, namun tidak dapat ditemukan oleh user karena kendala
masih kurang memahami.

REFERENSI

http://www.thegeekstuff.com/2012/04/terminate-c-thread/

Anda mungkin juga menyukai