Thursday, December 3, 2020
Wednesday, December 2, 2020
QUEUE dengan Link List
{
int data;
Node *link;
};
Node *front = NULL;
Node *rear = NULL;
//Function to check
if queue is empty or not
bool isempty()
{
if(front == NULL && rear == NULL)
return true;
else
return false;
}
//function to enter
elements in queue
void enqueue ( int
value )
{
Node *ptr = new Node();
ptr->data= value;
ptr->link = NULL;
//If inserting the first element/node
if( front == NULL )
{
front = ptr;
rear = ptr;
}
else
{
rear ->link = ptr;
rear = ptr;
}
}
//function to
delete/remove element from queue
void dequeue ( )
{
if( isempty() )
cout<<"Queue is empty\n";
else
//only one element/node in queue.
if( front == rear)
{
free(front);
front = rear = NULL;
}
else
{
Node *ptr = front;
front = front->link;
free(ptr);
}
}
//function to show
the element at front
void showfront( )
{
if( isempty())
cout<<"Queue is empty\n";
else
cout<<"element at front is:"<<front->data;
}
//function to display
queue
void displayQueue()
{
if (isempty())
cout<<"Queue is empty\n";
else
{
Node *ptr = front;
while( ptr !=NULL)
{
cout<<ptr->data<<"
";
ptr= ptr->link;
}
}
}
//Main Function
int main()
int choice, flag=1, value;
while( flag == 1)
{
cout<<"\n1.enqueue 2.dequeue
3.showfront 4.displayQueue 5.exit\n";
cin>>choice;
switch (choice)
{
case 1: cout<<"Enter Value:\n";
cin>>value;
enqueue(value);
break;
case 2: dequeue();
break;
case 3: showfront();
break;
case 4: displayQueue();
break;
case 5: flag = 0;
break;
}
}
return 0;
}
Wednesday, November 18, 2020
Penjadwalan pada Sistem Operasi dan Grid
Sebagian besar aplikasi bersifat interaktif untuk pengguna dalam sistem operasi (OS). OS melakukan penjadwalan level instruksi (CPU) dengan mengeksploitasi interleaving operasi I/O dan operasi CPU. Tujuan utama penjadwalan OS adalah keadilan antar proses. Dalam lingkungan grid, sebagian besar aplikasi bukanlah pengguna interaktif. Penjadwalan grid bekerja pada level task dengan eksploitasi task independen yang dieksekusi secara paralel. Tujuan utama penjadwalan grid adalah menyelesaikan pekerjaan atau aplikasi pada waktu mulai paling awal. Penjadwalan pada OS adalah cara menentukan proses resident yang dialokasikan dan dijalankan di satu CPU. Penjadwalan grid adalah cara mengalokasikan proses ke berbagai sumber daya untuk mengoptimalkan tujuan kinerja sistem yang luas atau memiliki tujuan khusus. Perangkat lunak yang dikenal sebagai middleware digunakan untuk menangani berbagai variasi dalam aplikasi perangkat lunak dan perangkat keras yang digunakan dalam lingkungan grid dengan berbagai bentuk jaringan grid. Salah satu komponen terpenting middleware adalah manajer sumber daya lokal yang menangani pemilihan sumber daya dan penjadwalan pekerjaan.
SOAL : TEORI BAHASA dan AUTOMATA
1. Jika S = { bab, b}
S*= { Λ dan word bentukan yang berasal dari
aba dan b }, maka himpunan string yang terbentuk adalah
2. Jika S = { a,
baab }
S* = { Λ dan word bentukan yang berasal dari
a dan bab } maka himpunan string yang terbentuk adalah
3. Tentukan bahasa
dari masing-masing grammar berikut :
G1 dengan Q1 = {1. S → AaAa, 2. A → AaAa, 3. A → bc}, Derivasi kalimat terpendek dan umumnya?
Saturday, November 14, 2020
Perbedaan antara Grid, Cluster dan Cloud
• Terdiri dari beberapa mesin-mesin bertipe sama.
• Tightly-coupled menggunakan koneksi jaringan yang dedicated
• Semua mesin berbagi sumber daya.
• Harus mempunyai software seperti implementasi MPI yang memungkinkan program-program dijalankan pada semua node.
Cluster berbeda dengan cloud dan grid karena cluster adalah sekelompok komputer yang terhubung dengan jaringan lokal, sedangkan cloud dan grid lebih luas dan dapat didistribusikan secara geografis. Cara lain untuk mengatakannya adalah dengan mengatakan bahwa sebuah cluster digabungkan secara tightly-coupled, sedangkan grid atau cloud digabungkan secara loosely-coupled. Cluster terdiri dari kelompok mesin dengan perangkat keras yang serupa, sedangkan cloud dan grid terdiri dari mesin dengan konfigurasi perangkat keras yang mungkin sangat berbeda. Perbedaan antara cloud dan grid dapat dinyatakan sebagai berikut:
• Distribusi sumber daya, komputasi cloud adalah model terpusat sedangkan komputasi grid adalah model terdesentralisasi dimana perhitungan dapat terjadi dibanyak domain administratif.
• Kepemilikan grid adalah kumpulan komputer yang dimiliki oleh banyak pihak dibeberapa lokasi dan terhubung bersama sehingga pengguna dapat berbagi kekuatan gabungan sumber daya. Cloud adalah kumpulan komputer yang biasanya dimiliki oleh satu pihak