- Back to Home »
- SISTEMOPERASI »
- sistem operasi mod9
Posted by : Unknown
Kamis, 19 Desember 2013
LAPORAN PRAKTIKUM SISTEM OPERASI
MODUL 9
Nama:
Dede iskandar
Nim
: 3411121140
Kelas
: c
INFORMATIKA
UNIVERSITAS
JENDERAL ACHMAD YANI
CIMAHI
2013-2014
bab 1
§ Buat
program C berikut menggunakan teks editor
/*include*/
#include
<unistd.h> /* symbolic constanta
*/
#include
<sys/types.h> /* primitive
system data types*/
#include
<errno.h> /* errors */
#include
<stdio.h> /* input/output */
#include
<stdlib.h> /* general utilitiez
*/
#include
<pthread.h> /* POSIX threading */
#include
<string.h> /* string handling */
/*
prototype for thread routine */
void
print_message_function (void *ptr);
typedef
struct str_thdata
{
int thread_no;
char mesaage[100];
}
thdata;
int
main()
{
pthread thread1, thread2;
thdata data1, data2;
data1.thread_no=1;
strcpy(data1.mesaage,
"Hello!");
data2.thread_no=2;
strcpy(data2.mesaage,
"Hey!");
pthread_create (&thread1, NULL,
(void *) &print_message_function, (void *) &data1);
pthread_create (&thread2, NULL,
(void *) &print_message_function, (void *) &data2);
pthread_join(thread1, NULL);
pthread_join(thread2, NULL);
exit(0);
}
void
print_message_function(void *ptr)
{
thdata *data;
data = (thdata *) ptr;
printf("thread %d says %s
\n", data->thread_no, data->message);
pthread_exit(0);
}
Jalankan
program yang sudah di kompilasi dengan
perintah ./thread-ex Dan ini
adalah tamilan progam hasil eksekusi program di atas
. Modipikasi sourcode sehingga thread 1 dan thread ke 2
menghasilkan output yang berbeda,dan ini adalah program yang sudah saya edit kode programnya
Bagian yang yang saya edit terletak pada pendeklarasian
program di mana thread 1 saya rubah nama
hasil outputnya dan begitupun thread
yang ke duanaya.
Gambar hasil eksekusi program yang sudah rubah
kode programnya
pungsi pthread.h merupakan pengenal dari sebuah thread yang dibuat.
-. Pungsi stdio yaitu
library pada bahasa C yang digunakan untuk operasi input-output (stdio =
Standar Input dan Output). Tanpa menggunakan library ini maka perintah-perintah
input dan output tidak dapat dieksekusi.
Pungsi stdlibe adalah
untuk membersihkan suatu layar setelah memilih suatu menu sama saja
dengan clscr pada bahasa c
BAB 11
Penutupan
Kesimpulan
sistem
operasi telah
mendukung time-slice dan multiprosesor threading dengan penjadwalan proses.
Kernel dari suatu sistem operasi memungkinkan program untuk memanipulasi thread
melalui antarmuka system call. Beberapa implementasi yang disebut thread
kernel, sedangkan lightweight process (LWP) adalah jenis khusus thread kernel
yang berbagi state dan informasi.
Threads
berbeda dari proses multitasking sistem operasi tradisional, diantaranya :
-
Proses biasanya
independen, sedangkan thread ada sebagai bagian dari sebuah proses
-
Proses membawa
informasi state yang cukup besar, sedangkan beberapa thread dalam proses yang
sama berbagi sumberdaya memori dan lainnya
-
Proses memiliki ruang
alamat yang terpisah, sedangkan thread berbagi ruang alamt yang sama
-
Proses berinteraksi
hanya melalui mekanisme yang disediakan sistem inter-proses communication
-
Context switching
antara thread dalam proses yang sama biasanya lebih cepat dari konteks
switching antara proses.
download file
unjani
download file
unjani