Selasa, 15 September 2009

TuGaz SisTeM OpeRasi

Nama : Ika Septiyani
NPM : 43E57006085032
Jurusan : Teknik Informatika
Kelas : Malam


BAB 3........

1. Sebutkan state pada proses dan jelaskan diagram proses :


New: proses sedang dibuat.
Running: proses sedang dieksekusi.
Waiting: proses sedang menunggu beberapa event yang akan terjadi (seperti menunggu untuk menyelesaikan I/O atau menerima sinyal).
Ready: proses menunggu jatah waktu dari CPU untuk diproses.
Terminated: proses telah selesai dieksekusi.

Penjelasan Proses Diagram :

Status Proses. New, ready, running, waiting dan terminated.
Program Counter. Menunjukkan alamat berikutnya yang akan dieksekusi oleh proses tersebut.
CPU Registers. Register bervariasi tipe dan jumlahnya tergantung arsitektur komputer yang bersangkutan. Register-register tersebut terdiri-atas: accumulator, index register, stack pointer, dan register serbaguna dan beberapa informasi tentang kode kondisi. Selama Program Counter berjalan, status informasi harus disimpan pada saat terjadi interrupt. Gambar 3-3 menunjukkan switching proses dari satu proses ke proses berikutnya.
Informasi Penjadwalan CPU. Informasi tersebut berisi prioritas dari suatu proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya.
Informasi Manajemen Memori. Informasi tersebut berisi nilai (basis) dan limit register, page table, atau segment table tergantung pada sistem memory yang digunakan oleh SO.
Informasi Accounting. Informasi tersebut berisi jumlah CPU dan real time yang digunakan, time limits, account numbers, jumlah job atau proses, dll.

2. Apa yang dimaksud short term scheduler dan long term scheduler ?

Dua bentuk penjadwal, yaitu:

Longterm-Scheduler (job scheduler), menyeleksi proses-proses mana yang harus dibawa ke ready queue.

Short-term Scheduler (CPU scheduler), memilih proses-proses yang siap untuk dieksekusi, dan mengakolakasikan CPU ke salah satu dari proses-proses tersebut.

Short-term scheduler terjadi sangat sering (dalam milidetik), jadi setiap proses

dijadwal dengan cepat, sedangkan long-term scheduler terjadi sangat jarang (dalam detik atau menit), sehingga setiap proses dijadwal dengan lambat. Long-term scheduler digunakan untuk mengontrol tingkat multiprogramming.


3. Jelaskan 4 alasan mengapa proses harus bekerja sama.

Proses harus kerjasama karena mempunyai keuntungan yaitu :


a. pembagian informasi


b. meningkatkan kecepatan komputasi


c. proses dapat dibagi dalam modul-modul dan


d. lebih memberikan kenyamanan pada programmer.

4. Tuliskan kode program untuk penyelesaian permasalahan producer consumer dengan menggunakan shared memory


#define BUFFER_SIZE 10
Typedef struct {
. . .
} item;
item buffer[BUFFER_SIZE];
int in = 0;
int out = 0;
Proses producer :
item nextProduced;
while (1) {
while (((in + 1) % BUFFER_SIZE) == out)
; /* do nothing */
buffer[in] = nextProduced;
in = (in + 1) % BUFFER_SIZE;
}
Proses consumer :
item nextConsumed;
while (1) {
while (in == out)
; /* do nothing */
nextConsumed = buffer[out];
out = (out + 1) % BUFFER_SIZE;
}


5. Diketahui skema komunikasi antar proses menggunakan mailbox


1. Proses P ingin menunggu 2 pesan, satu dari mailbox A dan satu dari mailbox B. Tunjukkan urutan send dan receive yang dieksekusi


2. Bagaimana urutan send dan receive yang dieksekusi P jika P ingin menunggu


3. satu pesan dari mailbox A atau mailbox B (salah satu atau keduanya)





6. Jelaskah apa yang dimaksud dengan thread dan struktur dari thread



Pengertian tread : Suatu unit dasar dari CPU utilization yang berisi program counter, kumpulan register, dan ruang stack disebut dengan thread atau lighweight process (LWP). Thread akan bekerjasama dengan thread yang lainnya dalam hal penggunaan bagian kode, bagian data, dan resource sistem operasi, seperti open file dan sinyal secara kolektif yang sering disebut dengan task.

Struktur Thread :

Seperti halnya proses, thread memiliki status: ready, blocked, running dan terminated, dan hanya satu thread yang aktif dalam satu waktu. Thread dapat membuat child thread. Jika satu thread dalam keadaan blocked, maka thread yang lainnya dapat dijalankan. Namun, tidak saling bebas, Sebab semua thread dapat mengakses setiap alamat dalam satu task, thread dapat membaca dan menulisi stack dari thread yang lainnya. Sehingga tidak ada proteksi antara satu thread terhadap thread yang lainnya. Suatu proses dapat terdiri dari satu thread (single thread) dan beberapa thread (multi thread)

7. Jelaskan empat keuntungan menggunakan threads pada multiple process!

(1)Pada respon lebih cepat

(2)Menggunakan resource bersama-sama

(3)Lebih ekonomis

(4)Meningkatkan utilitas arsitektur mikroprosessor




8. Apakah perbedaan antara user-level thread dan kernel-supported threads?

User thread adalah thread yang diatur dengan menggunakan pustaka user level thread. Contoh; sistem yang menggunakan user thread adalah POSIX Pthreads, Mach C-threads dan Solaris threads.

Kernel thread adalah thread yang didukung oleh Kernel. Contoh; sistem yang menggunakan kernel thread adalah Windows 95/98/NT/2000, Solaris, Tru64 UNIX, BeOS dan Linux.

9. Ada 3 model multi threading, jelaskan!

Model multi thread terdiri dari model Many-to-One, One-to-One dan Many-to-Many.
Pada model Many-to-One, beberapa user level thread dipetakan ke satu kernel thread dan digunakan pada sistem yang tidak mendukung kernel threads.

Pada model One-to-One, setiap user-level thread dipetakan ke kernel thread, misalnya pada Windows 95/98/NT/2000 dan OS/2.

Pada model Many-to-Many, user level thread dipetakan ke beberapa kernel threads. Pada sistem operasi ini akan dibuat sejumlah kernel thread, contohnya Solaris 2 dan Windows NT/2000 dengan ThreadFiber package.



10. Jelaskan state pada Java thread

Bahasa pemrograman Java menggunakan Java thread yang dibuat dengan menggunakan class Thread dan mengimplementasikan antar muka yang bersifat runnable (dapat dijalankan). Java thread diatur oleh Java virtual machine (JVM). Java thread terdiri dari state new, runnable, blocked dan dead.

Sabtu, 27 Juni 2009

Lat_UAS

<html>
<head>
<title>Struktur Data Linked List</title>
</head>
<body>
<script language = "JavaScript">
<!--

function LinkedList()
{
this._panjang = 0;
this._kepala = null;
}

LinkedList.prototype =
{
constructor: LinkedList,

//Membuat Metode untuk Menambah Data Kedalam List
Tambah: function (data)
{
//Membuat Node List
var node = {data: data, next: null}, NodeTanda;

//Periksa Isi List
if (this._kepala === null)
{
this._kepala = node;
}
else
{
NodeTanda = this._kepala;
while (NodeTanda.next)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.next = node;
}
this._panjang++
},


//Membuat metode Untuk Menunjuk Item Data
Item: function (index)
{
if (index > -1 && index < this._panjang)
{
var NodeTanda = this._kepala,
i = 0;
while (i++ < index)
{
NodeTanda = NodeTanda.next;
}
return NodeTanda.data;
}
else
{
return null;
}
},


//Membuat metode Untuk Membuang Elemen List
Buang: function (index)
{
if (index > -1 && index < this._panjang)
{
var NodeTanda = this._kepala, previous, i = 0;
if (index === 0)
{
this._kepala = NodeTanda.next;
}
else
{
while (i++ < index)
{
previous = NodeTanda;
NodeTanda = NodeTanda.next;
}

previous.next =NodeTanda.next;
}
this._panjang--;
return NodeTanda.data;
}
else
{
return null;
}
},


//Membuat metode Untuk Mengetahui Jumlah Elemen List
Ukuran: function()
{
return this._panjang;
},


//Membuat metode Untuk Membentuk Array
toArray: function()
{
var result = [],
NodeTanda = this._kepala;

while (NodeTanda)
{
result.push (NodeTanda.data);
NodeTanda = NodeTanda.next;
}
return result;
},


//Membuat metode Untuk Konversi ke String
toString: function()
{
return this.toArray().toString();
}

}
var list = new LinkedList ();


list.Tambah("3");
list.Tambah("2");
list.Tambah("1");
list.Tambah("4");


document.write("Isi Linked List <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(list.Item(i) + "<br>");
}
document.write("--------------- <br>");

document.write("Isi Linked List Awal = " +list.Ukuran() + "<br>");
document.write ("<br>")


document.write("Isi Linked List to Array =" +list.toArray());
document.write ("<br>")


document.write("Data String Linked List Awal =" +list.toString());



function Urutkan (form)
{
DataKosong = false;
DataInputan = form.Data.value;
inputData = DataInputan.split(",");
for (var i = 0; i < inputData.length; i++)
{
inputData[i] = parseInt (inputData[i], 10);
if (isNaN(inputData[i]))
{
DataKosong = true;
break;
}
}

inputData = bubbleSort(inputData, 0, inputData.length - 1);
if (DataKosong)
{
alert("Silakan Entri Dulu Data, Pisahkan dengan tanda Koma");
form.Data.focus();
}
else
form.Hasil.value = DataString(inputData, 0);
}

function DataString (toArray, Angka)
{
if ((toArray.length - 1) >= Angka)
return (toArray[Angka] + "," + DataString(toArray,(Angka +

1)));
else
return "";
}

function bubbleSort (toArray, Mulai, MulaiBaru)
{
for (var i = MulaiBaru - 1; i >= Mulai; i--)
{
for (var j = Mulai; j <= i; j++)
{
if (toArray[j+1] < toArray[j])
{
var DataTemporer = toArray[j];
toArray[j] = toArray[j+1];
toArray[j+1] = DataTemporer;
}
}
}

return toArray;
}




</script>



<body>
<center>
<form>
Masukan Deretan Angka, Pisahkan dengan Koma :
<hr>
<input type=text name=Data size=30 value= >
<br>
<br>
<input type=button value="Urutkan"

OnClick="Urutkan(this.form)">
<br>
<br>
<br>
Hasil Pengurutan :
<hr>
<input type=text name=Hasil size=30>
</form>
</center>

</body>
</html>
</html>

data_angka_toArray

Memanggil List Ukuran, toArray, toString
<html>
<head>
<title>Struktur Data Linked List</title>
</head>
<body>
<script language = "JavaScript">
<!--
function DoublyLinkedList()
{
this._Kepala = null;
this._Ekor = null;
this._Panjang = 0;
}

DoublyLinkedList.prototype =
{
constructor: DoublyLinkedList,
Tambah: function (data)
{
var node = {data: data, next: null, prev: null};

if (this._Panjang == 0)
{
this._Kepala = node;
this._Ekor = node;
}
else
{
this._Ekor.next = node;
node.prev = this._Ekor;
this._Ekor = node;
}
this._Panjang++;

},

ItemList: function(index)
{
if (index > -1 && index < this._Panjang)
{
var NodeTanda = this._Kepala,
i = 0;

while(i++ < index)
{
NodeTanda = NodeTanda.next;
}

return NodeTanda.data;
}
else
{
return null;
}
},

Buang: function(index){

if (index > -1 && index < this._Panjang)
{
var NodeTanda = this._Kepala, i = 0;

if (index === 0)
{
this._Kepala = NodeTanda.next;
if (!this._Kepala)
{
this._Ekor = null;
}
else
{
this._Kepala.prev = null;
}

}
else
if (index === this._Panjang -1)
{
NodeTanda = this._Ekor;
this._Ekor = NodeTanda.prev;
this._Ekor.next = null;
}
else
{
while(i++ < index)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.prev.next = NodeTanda.next;
}
this._Panjang--;
return NodeTanda.data;

}
else
{
return null;
}


},

Ukuran: function(){
return this._Panjang;
},

toArray: function(){
var result = [],
NodeTanda = this._Kepala;

while(NodeTanda){
result.push(NodeTanda.data);
NodeTanda = NodeTanda.next;
}

return result;
},

toString: function(){
return this.toArray().toString();
}
}

var List = new DoublyLinkedList();


List.Tambah("1");
List.Tambah("2");
List.Tambah("3");
List.Tambah("4");


document.write("Isi LinkedList <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");


document.write("Isi LinkedList Awal = " + List.Ukuran() +"<br>");
document.write("Isi Array Awal = " + List.toArray() +"<br>");
document.write("Isi String Awal = " + List.toString() +"<br><br>");


//-->
</script>
</body>
</html>

menambah_toString

Memanggil List Ukuran, toArray, toString
<html>
<head>
<title>Struktur Data Linked List</title>
</head>
<body>
<script language = "JavaScript">
<!--
function DoublyLinkedList()
{
this._Kepala = null;
this._Ekor = null;
this._Panjang = 0;
}

DoublyLinkedList.prototype =
{
constructor: DoublyLinkedList,
Tambah: function (data)
{
var node = {data: data, next: null, prev: null};

if (this._Panjang == 0)
{
this._Kepala = node;
this._Ekor = node;
}
else
{
this._Ekor.next = node;
node.prev = this._Ekor;
this._Ekor = node;
}
this._Panjang++;

},

ItemList: function(index)
{
if (index > -1 && index < this._Panjang)
{
var NodeTanda = this._Kepala,
i = 0;

while(i++ < index)
{
NodeTanda = NodeTanda.next;
}

return NodeTanda.data;
}
else
{
return null;
}
},

Buang: function(index){

if (index > -1 && index < this._Panjang)
{
var NodeTanda = this._Kepala, i = 0;

if (index === 0)
{
this._Kepala = NodeTanda.next;
if (!this._Kepala)
{
this._Ekor = null;
}
else
{
this._Kepala.prev = null;
}

}
else
if (index === this._Panjang -1)
{
NodeTanda = this._Ekor;
this._Ekor = NodeTanda.prev;
this._Ekor.next = null;
}
else
{
while(i++ < index)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.prev.next = NodeTanda.next;
}
this._Panjang--;
return NodeTanda.data;

}
else
{
return null;
}


},

Ukuran: function(){
return this._Panjang;
},

toArray: function(){
var result = [],
NodeTanda = this._Kepala;

while(NodeTanda){
result.push(NodeTanda.data);
NodeTanda = NodeTanda.next;
}

return result;
},

toString: function(){
return this.toArray().toString();
}
}

var List = new DoublyLinkedList();


List.Tambah("Teknik Informatika");
List.Tambah("Teknik Komputer");
List.Tambah("Komputerisasi Akuntansi");
List.Tambah("Computer Networking");


document.write("Isi LinkedList <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");


document.write("Isi LinkedList Awal = " + List.Ukuran() +"<br>");
document.write("Isi Array Awal = " + List.toArray() +"<br>");
document.write("Isi String Awal = " + List.toString() +"<br><br>");

alert("ItemList 1 pada Linked List diBuang, yaitu = " + List.ItemList(1));
List.Buang(1);


document.write("Isi Linked LIst Setelah Dibuang <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(List.ItemList(i) + "<br>") ;
}
document.write("--------------- <br>");

document.write("<br>Isi LinkedList Terakhir = " + List.Ukuran() +"<br>");
document.write("Isi Array Akhir = " + List.toArray() +"<br>");
document.write("Isi String Awal = " + List.toString() +"<br>");
//-->
</script>
</body>
</html>

Rabu, 24 Juni 2009

gRaFh_iKa

<html>
<head><title>Dijkstra Algorithms </title>

</head>
<body>
<script language = "javascript">

var NilaiAcuan = 10000;
var TakTerdefinisi= -1;
var NamaVerteks= new Array('A','B','C','D','E','F');
var Matriks = new Array(6);

function Bobot(a,b)
{
return Matriks[a][b];
}

function Dijkstra(JumlahVerteks,Awal,d)
{
var Posisi = new Array(JumlahVerteks);
var i;
var Kunjungan = new Array(JumlahVerteks);
var pred = new Array(JumlahVerteks);

for(i=0; i<JumlahVerteks; i++)
{
Posisi[i] = NilaiAcuan;
pred[i] = TakTerdefinisi;
Kunjungan[i]= false;
}
Posisi[Awal]=0;

var Verteks;
for (Verteks =0; Verteks < JumlahVerteks; Verteks++)
{
var JarakTerpendek = NilaiAcuan, closest = -1;
for (i=0; i < JumlahVerteks; i++)
{
if (!Kunjungan[i])
{
if (Posisi[i] <= JarakTerpendek)
{
JarakTerpendek = Posisi[i]; closest = i;
}
}
}

Kunjungan[closest] = true

for (i=0; i < JumlahVerteks; i++)
{
if (!Kunjungan[i])
{
var w = Bobot(closest, i);
if (Posisi[closest]+w < Posisi[i])
{
Posisi[i] = Posisi[closest] + w;
pred[i] = closest;
}
}
}
}


i=d
if (Posisi[i] < NilaiAcuan)
{
var Lintasan = NamaVerteks[i];
var Verteks = i;
while (Verteks>0)
{
Verteks = pred[Verteks];
if (Verteks>=0) Lintasan = NamaVerteks[Verteks] + '->' + Lintasan;
}
alert("Jarak :" + Posisi[i]+' ('+Lintasan+')'+'<br>');
} else
{
alert("Tidak ada Jalur");
}
}


var x = '~';
document.write('<pre>');
document.write(Matriks[0]=new Array(0,2,3,x,x,x));
document.write('<br>');
document.write(Matriks[1]=new Array(2,0,3,6,x,x));
document.write('<br>');
document.write(Matriks[2]=new Array(3,3,0,3,5,x));
document.write('<br>');
document.write(Matriks[3]=new Array(x,6,3,0,1,3));
document.write('<br>');
document.write(Matriks[4]=new Array(x,x,5,1,0,1));
document.write('<br>');
document.write(Matriks[5]=new Array(x,x,x,3,1,0));
document.write('<br>');
document.write('</pre>');


document.write('<pre>A-2-B-6--D--3-F <br>');
document.write('\\ | /| / <br>');
document.write(' 3 3 3 1 1 <br>');
document.write(' \\ | / | / <br>');
document.write(' \\|/ |/ <br>');
document.write(' C--5-E <br> </pre>');



var Dari=0; // A
var Ke =5; // F
Dijkstra(Matriks.length,Dari,Ke);
//-->

</script>

</body>
</htmL>

sort_pengurutan

<html><head>
<script language="JavaScript">

function Urutkan (form)
{
DataKosong = false;
DataInputan = form.Data.value;
inputData = DataInputan.split(",");
for (var i = 0; i < inputData.length; i++)
{
inputData[i] = parseInt (inputData[i], 10);
if (isNaN(inputData[i]))
{
DataKosong = true;
break;
}
}

inputData = bubbleSort(inputData, 0, inputData.length - 1);
if (DataKosong)
{
alert("Silakan Entri Dulu Data, Pisahkan dengan tanda Koma");
form.Data.focus();
}
else
form.Hasil.value = DataString(inputData, 0);
}

function DataString (ArrayData, Angka)
{
if ((ArrayData.length - 1) >= Angka)
return (ArrayData[Angka] + "," + DataString(ArrayData,(Angka +

1)));
else
return "";
}

function bubbleSort (ArrayData, Mulai, MulaiBaru)
{
for (var i = MulaiBaru - 1; i >= Mulai; i--)
{
for (var j = Mulai; j <= i; j++)
{
if (ArrayData[j+1] < ArrayData[j])
{
var DataTemporer = ArrayData[j];
ArrayData[j] = ArrayData[j+1];
ArrayData[j+1] = DataTemporer;
}
}
}

return ArrayData;
}
</script>
</head>

<body>
<center>
<form>
Masukan Deretan Angka, Pisahkan dengan Koma :
<hr>
<input type=text name=Data size=30 value="5,6,8,5,12,4,8,4,20">
<br>
<br>
<input type=button value="Urutkan"

OnClick="Urutkan(this.form)">
<br>
<br>
<br>
Hasil Pengurutan :
<hr>
<input type=text name=Hasil size=30>
</form>
</center>

</body>
</html>

Rabu, 17 Juni 2009

TUgaZz_InsTaLasi_cOmp

KLASIFIKASI PERANGKAT LUNAK (Software)

Perangkat lunak secara umum dapat di bagi 2 yaitu :

1. Perangkat lunak sistem

2. Perangkat lunak aplikasi.

Perangkat lunak sistem dapat di bagi lagi menjadi 3 macam yaitu :

1. Bahasa pemrograman : merupakan perangkat lunak yang bertugas mengkonversikan arsitektur dan algoritma yang di rancang manusia ke dalam format yang dapat di jalankan komputer, contoh bahasa pemrograman di antaranya : BASIC, COBOL, Pascal, C++, FORTRAN

2. Sistem Operasi : saat komputer pertama kali di hidupkan, sistem operasilah yang pertama kali di jalankan, sistem operasi yang mengatur seluruh proses, menterjemahkan masukan, mengatur proses internal, memanejemen penggunaan memori dan memberikan keluaran ke peralatan yang bersesuaian, contoh sistem operasi : DOS, Unix, Windows 95, IMB OS/2, Apple’s System 7

3. Utility : sistem operasi merupakan perangkat lunak sistem dengan fungsi tertentu, misalnya pemeriksaan perangkat keras (hardware troubleshooting), memeriksa disket yang rusak (bukan rusak fisik), mengatur ulang isi harddisk (partisi, defrag), contoh Utilty adalah Norton Utility

Perangkat lunak aplikasi merupakan bagian perangkat lunak yang sangat banyak di jumpai dan terus berkembang, baik pada system operasi berbasis text maupun pada system operasi berbasis Grafis (GUI). Sebelum tahun 1990-an aplikasi yang di kenal yaitu pemroses kata (Word Star, Chi Write), pemproses tabel (Lotus 123, Quatro Pro), database (DBASE), dan hiburan (game). Pada perkembangan pemroses kata, tabel dan database saat ini telah di bundel menjadi aplikasi office atau Open Office dengan tambahan aplikasi untuk pembuatan presentasi yang nanti akan di berikan pada pelatihan ini. Contoh aplikasi office adalah Microsoft Office yang terdiri dari Word(pemroses kata), Excel (pemroses tabel), Access (database), dan PowerPoint (presentasi). Dan contoh Open Office KWord (Pemroses kata), KSpreed(Pemroses table), KPresenter (presentasi). Yang berkembang sangat banyak saat ini adalah aplikasi multimedia dan internet. Contoh aplikasi multimedia adalah Winamp, Media Player, XMMS, untuk memutar musik berformat MP3 atau CD Audio, kemudian RealPlayer, Power DVD, XINE yang dapat digunakan untuk menonton film atau VCD. Aplikasi internet yang umum di gunakan adalah untuk browsing,e-mail, chatting dan messenger. Aplikasi yang bersifat khusus di antaranya untuk membantu pekerjaan Engineer seperti AutoCAD (gambar struktur), Protel (gambar rangkaian elektronik), dan Matlab (pemroses dan visualisasi persamaan matematis).

Sistem Operasi

Sistem operasi sangat berkaitan dengan prosesor yang di gunakan. Jenis prosesor pada PC yang umum adalah yang kompatibel dengan produk awal IBM dan Macintosh. PC Macintosh, perangkat lunaknya di kembangkan oleh perusahaan yang sama sehingga perkembangannya tidak sepesat cloning IBM PC. Sistem operasi dari cloning IBM saat ini secara umum terbagi menjadi 2 aliran yaitu komersil yang di buat oleh Microsoft, dan Linux yang bersifat freeware yang di kembangkan oleh peneliti dari seluruh dunia karena bersifat open source, yaitu bahan baku pembuatan dapat di baca, sehingga hasilnya dapat di tambah atau di modifikasi oleh setiap orang. Sementara interaksi antara pengguna dan komputer di kenal melalui 2 cara, cara yang pertama adalah pemberian instruksi melalui penulisan perintah (text), atau dengan cara tunjuk (pointer) dengan tampilan grafis (GUI).

Instlasi Software pada berbagai macam basis OS

Instalasi Software Ms-Office

Ms-Offiice merupakan paket software yang dibuat oleh Microsoft, yang termasuk dalam paket software ini antara lain : Ms-Word (Word Processing), Ms-Excel (Spreed Sheet), Ms-Power Point (Presentasi), Ms-Access (Database).

Pertama yang perlu dipahami adalah bahwa software ini hanya dapat diinstalasi dan berjalan pada system operasi Microsoft Windows.

Adapun langkah-langkah instalasinya adalah sebagai berikut :

1. Siapkan Paket instalasi software yang legal dalam media penyimpanan yang sesuai seperti HD, CD, FDD, DVD atau media lain.

2. Jalankan system operasi Windows dan pastikan bahwa system operasi tersebut telah berjalan dengan baik.

3. Pastikan bahwa ruang (spaces) HD masih mencukupi.

4. Apabila paket software tersedia dalam media CD, maka masukkan CD installer tersebut kedalam CD-Room.

5. Ikuti proses instalasi sesuai dengan Petunjuk instalasi (Instalation user manual).

Instalasi Open Office

Open Office merupakan paket software freeware (open source), software ini berjalan pada sistem operasi Linux. Adapun yang termasuk dalam paket software ini antara lain : K-Word (Word processing), KSpreed (Spread Sheet), KPresenter (Presentasi).

Langkah-langkah instalasi paket software ini adalah :

1. Masuk ke modus Yast

2. Masuk menu instalasi software

3. Pilih dan tandai software yang akan diinstalasi.

4. dan Lanjutkan sesuai dengan petunjuk/langkah-langkah, dalam instalation user manual.

Troubleshouting

Di dalam proses tidak jarang akan terjadi sutu troubleshouting-troubleshouting yang terajdi mulai dari proses partisi harddisk sampai dengan pengintalan, antara lain :

1. Media Penyimpanan (Harddisk/Diket/CD)

> Boot record rusak

Ciri-ciri kerusakan :

· Bila Media Penyimpanan tersebut diakses, missal pindah directory atau memberi perintah dir/explor untuk melihat file maka akan keluar pesan General failure reading drive n :

( n adalah nama drive, bisa a atau c )

· Bila dilakukan perintah format maka akan mengeluarkan pesan kesalahan :

Invalid media track 0 bad – disk unusable format terminated

Kerusakan pada media ini biasanya sangat fatal terutama pada track 0 yang bad secara fisik, selama ini kasus media track 0 yang hancur tidak bisa diperbaiki.

> FAT rusak

Setiap cluster ( penyimpanan terkecil yang dibutuhkan suatu file ) memiliki satu lokasi dalam fat yang menunjukkan cluter yang berikutnya.

Ciri – ciri kerusakan :

· Bila suatu file bicara dengan perintah dos misalnya type nama file, akan muncul pesan kesalahan :

File allocation table bad, drive n

· Bila suatu file dibuka atau dibaca isinya ter nyata ada sebagian isi file yang hilang dan digantikan dengan karakter aneh atau ada bagian file yang hilang

Untuk membetulkan FAT dapat dilakukan dengan perintah CHKDSK dengan parameter /f (fix). Ketikkan C: \CHKDSK /f n: (Enter) maka CHKDK akan memperbaikinya dengan mengatur ukuran file untuk kesalahan alokasi, memotong file dari bagian yang rusak dan hasilnya disimpan dalam bentuk FILENNNN.CHK pada direktori utama. NNNN adalah nomor yang berurutan ( dimulai dari angka 0000 ).

> Root Directory Rusak

bagian ini merupakan bagian yang berhubungan dengan pemanipulasian file, yaitu tentang nama file, eksternsi, atribut, hari dan tanggal file dibuat, nomor cluster awl dan ukuran file.

Ciri – ciri kerusakan :

Karena berfariainya kerusakan derektory yang mungkin maka berikut ini contoh kesalahan yang umum terjadi :

· Bila dilakukan perintah DIR, akan ditampilkan pesan kesalahan :

Data eror reading drive n:

Abort, retry, fail ?_

Atau bisa juga ditampilkan pesan :

General failure error reading drive n :

Abort, retry, fail ?_

Cara mengatasi kesalahan pada root directory bisa dilakukan dengan

utility scandisk.

> Jika terdapat Bad Sector

Cirri -ciri Kerusakan :

Kesalahan jenis ini menyebabkan fele yang menempati sector yang rusak ( bad sector) tidak bisa diakses, baik itu dibaca, ditulisi atau dikopi, bila file tersebut diakses maka computer akan memberikan pesan kealahan :

Error reading drive n

Abort, retry, ignore ?_

Pilihan ignore berarti memaksa computer untuk tetap membaca bagian yang rusak. Bila ini dipilih maka kemungkinan computer akan hang. Biasanya jika bed sector itu cara fisik memang rusak maka disk tersebut akan tetap memiliki bad sector. Untuk mengatasi atau memindahkan data yang ada pada bad sector tersebut sekaligus menandainya bahwa terdapat bad di situ digunakan scandisk.