Materi Kuliah : Interaksi manusia dengan komputer

INTERAKSI MANUSIA DAN KOMPUTER

( IMK )

“PERANCANGAN WEB JUAL BELI ONLINE MENGGUNAKAN METODE USER CENTERED MODEL (UCD)”

 

 

 

BAB I

PENDAHULUAN

 

1.1              Latar Belakang

Di dalam perdagangan di zaman yang sudah serba modern ini,dibutuhkan gerak cepat dan seba otomatis, agar para pelanggan di dunia perdagangan lebih tertarik kepada komoditas yang kita tawarkan dan tidak perlu repot. Begitu pula pada dunia internet, makin banyak orang yang menggunakan jasa internet. Yang dahulunya orang senang berbelanja di pasar-pasar sekarang sudah mulai beralih menjadi online, oleh karena itu diperlukan suatu aplikasi berbasis web yang dapat melakukan penjaulan dan pembelian secara online. Web ini dirancang untuk memudahkan pihak penjual dan pihak pembeli dalam melakukan transaksi. Penjual terlebih dahulu harus mendaftar menjadi member untuk dapat melakukan berhubungan dengan pihak admin. Kemudian admin akan  posting image tentang barang yang akan dijual beserta harga yang dicantumkan didalam image. Tujuan posting image ini sendiri adalah agar memudahkan pihak konsumen atau pembeli dalam mencari barang yang dibutuhkan tanpa harus membaca keterangan karena dengan satu gambar dapat mewakili beberapa keterangan. Pihak admin hanya melayani penjuak yang telah melakukan registrasi member ini ditujukan demi keamanan dan kenyamanan semua pihak. Member yang tidak aktif selama dua belas bulan akan dihapus dari member aktif tetapi bisa mendaftar ulang sebagai member baru. Admin disini membedakan dua member atau pembeli dimana satu member adalah member aktif yang sudah terdaftar dan satu member termasuk dalam kategori member non aktif atau user biasa  perbedaan untuk member aktif adalah yang mempunyai hak akses untuk melakukan negosiasi barang dengan penjual atau melakukan penawaran dan meninggalkan iklan atau komentar tentang barang yang ingin dicari. Sedagkan user biasa hanya dapat melihat isi web dan jika ingin mengisi komentar diharuskan untuk mengisi email dan nama. User merupakan object yang penting didalam pengembangan dan pembangun sistem. User disini adalah pribadi, organisasi, dan masyarakat. User saat ini harus berada pada level of design sophistication dari semua antarmuka grafis beserta isi dari webnya. Pada saat user berinteraksi dengan sistem user harus merasa sesuai dengan pengalaman yang pernah dirasakan pada saat berinteraksi dengan sistem yang lain. User harus merasa puas dengan informasi yang disediakan oleh sistem dan merasa nyaman saat berinteraksi dengan sistem. UCD (User Centered Design) adalah filosofi perancangan yang menempatkan pengguna sebagai pusat dari proses pengembangan sistem. Pendekatan UCD telah didukung berbagai teknik, metoda, tools, procedur, dan proses yang membantu perancangan sistem interaktif yang lebih berpusat pada pengguna. Sasaran UCD adalah lebih dari sekedar membuat produk yang berguna.

 

1.2    Perumusan Masalah

Masalah yang akan diteliti adalah bagaimana merancang website jual beli online.  Penelitian ini dilakukan untuk mengetahui:

 Bagaimana merancang Sistem jual beli online pada toko o’shop?

  1. Bagaimana melakukan pendataan member penjual dan member pembeli pada toko o’shop?
  2. Bagaimana melakukan pendataan transaksi jual beli minim bug pada toko o’shop?

 1.3    Tujuan

Tujuan dari perancangan dan pembuatan sistem informasi penjadwalan ini

adalah :

  1. Untuk menghasilkan sistem website pada toko o’shop agar memudahkan member aktif dalam melakukan transaksi secara online dengan pembayaran transfer rekening atau cash on delivery sesuai dengan kesepakatan karena web ini hanya sekadar fasilitator.
  2. Untuk mempermudah pendataan dan pngelolahan member aktif  dan barang yang diiklankan pada toko o’shop.
  3. Untuk melakukan pendataan transaksi jual beli maka perlu dilakukan manajemen member dan barang agar dapat terakomodasi secara detail dan akurat dengan pertimbangan maintenance pada sistem untuk menghindari bug.

 1.4    Batasan Masalah

          Batasan-Batasan masalah yang digunakan dalam penelitian ini adalah :

  1. Sistem Informasi akan dirancang untuk komputer PC yang terhubung dengan server.
  2. Sistem ini hanya melayani member aktif untu mempergunakan fasilitas memasang iklan dan mencari barang termasuk neosiasi, melayani user biasa bukan member yang hanya dapat untuk sekadar melihat tampilan website dan menuliskan komentar tanpa harus mendaftar.
  3. Sistem hanya sebagai media fasilitas untuk member yang ingin melakukan kegiatan transaksi jual beli secara online dan tidak bertanggung jawab atas segala pembayaran karena pembayarn mutlak ditentukan member baik melalui transfer atm atau cash on delivery.
  4. Sistem akan dilakukan maintenance secara manual atau offline mode setiap minimal setiap satu bulan sekali atau setiap terdeteksi masalah pada sistem.
  5. Sistem ini dikembangkan dalam tahap pembelajaran untuk melakukan melanjutkan pengembangan sistem yang lebih kompleks.

 1.5     Manfaat

  Manfaat dari proyek ini adalah :

  1. Untuk memberi kemudahan member dalam melakukan kegiatan jual beli secara online pada toko o’shop.
  2. Untuk memberi kemudahan pihak member penjual dalam mengakomodasi iklan tentang barang yang yang akan dijual atau diiklankan kepada masyarakat.
  3. Untuk memberi kemudahan pihak member pembeli dalam mencari dan membeli baran yang diinginkan secara cepat beserta harganya.
  4. Untuk mempermudah pihak admin dalam melakukan manajemen user dan barang.
  5. Untuk menjadi media komunikasi antara pihak penjual dan pembeli atau masyarakat pada umunya dalam hal jual beli secara online atau sekadar mencari tahu tentan barang yang ada di toko o’shop.

 1.6    Metodologi

Dalam penyusunan laporan kerja praktek ini, metodologi yang digunakan adalah:

  1. Studi Literatur

Studi Literatur, yaitu dengan melakukan pengumpulan data mengenai semua jenis layanan dan apa saja yang ditawarkan oleh  sistem, yaitu:

  1. Algoritma
  2. Rekayasa perangkat lunak
  3. HTML
  4. Php
  5. UCD
  6. Oracle 10.g
  7. Observasi

Melakukan pengamatan di lapangan sebagai proses analisis kebutuhan sistem dengan cara:

1. Wawancara

Pimpinan melalui admin melakukan wawancra dengan pihak penjual dan pembeli melalui email. 

2. Observasi

Melakukan pengamatan tentang apa saja yang menyagkut jual beli baik secara langsung maupun yang tidak langsung seperti toko online termasuk barang yang diiklankan sehingga informasi yang diperoleh lebih detail dan akurat.

 3. Analisis sistem

Analisis Sistem, yaitu menganalisis semua sistem informasi yang akan ditampilkan, dimana sistem informasi tersebut harus sesuai dengan keinginan penjual dan pembeli sesuai dengan metode UCD dimana yang difokuskan adalah user. Selain itu juga menganalisis bagaimana sistem transaksi jual beli dilakukan.

 

 Perancangan sistem

Menentukan langkah-langkah operasi dalam proses pengolahan data dan pembuatan rancang bangun pada sistem.

 1. Implementasi sistem

Penerapan aplikasi sistem sesuai dengan hasil analisis dan rancangan sebelumnya.

 2. Pengujian (testing)

Pada Tahap ini sistem yang sudah dirancang diuji oleh perancang dan membandingkan solusi pada sistem dengan pemikiran dosen pembimbing maupun dosen yang berkompetensi dalam bidang ini.

 3. Dokumentasi

       Pada Tahap ini dilakukan laporan hasil analisis ke dalam format penulisan laporan proyek dengan disertai kesimpulan akhir yang merupakan sifat dari rekayasa perangkat lunak itu sendiri.

 

1.7              Sistematika Penulisan

Untuk memudahkan pembuatan laporan proyek penjadwalan di kampus ITATS maka laporan ini dibagi dalam berbagai bab, yaitu :

 

BAB I PENDAHULUAN

Berisi penjelasan latar belakang, perumusan masalah, batasan masalah, tujuan penulisan, metodologi, sistem penulisan dan relevansi.

 

      BAB II KARAKTERISTIK USER

Dalam bab ini menjelaskan tentang rancangan segala sesuatu yang menyangkut tentang user learning style, tools preference, physical differences, cultural, application familiarity dan primary / secondary user.

BAB III DESAIN WEB

Berisi tentang penjelasan perancangan website yang akan dibangun seperti content and structure organization, visula organization, navigation and prototyping.

 

 

 

BAB II

KARAKTERISTIK SISTEM

 

1.                  Learnig Style

Do then read

User melakukan tindakan dan jika ditemukan kesulitan maka user akan membaca manual book atau buku petunjuk penggunaan. User tertentu mempunyai pemahaman dimana mereka akan lebih tahu dan mengerti jika melakukan tindakan langsung dan jika terjadi masalah pada sistem user dapat memahami kenapa masalah tersebut bisa terjadi.

  • User penjual

Sudah menjadi ketentuan para pengguna untuk membaca petunjuk pemakaian fasilitas jual beli online pada website sebelum melakukan pendaftaran lebih lanjut dan melakukan update iklan terutama penjual karena terdapat aturan tentang memposting gambar dan update iklan.

  • User pembeli

Terdapat dua user disini dimana satu user sebagai member terdaftar dan satu user sebagai user biasa yang belum terdaftar. User terdaftar mayoritas tidak memntigkan ketentuan yang ada didalam website mereka hanya mendaftar dan melakukan pencarian barang atau iklan yang dicari.

 

Read then do

User membaca terlebih dahulu sampai selesai sebelum melakukan tindakan karena dikhawatirkan apa yang akan dikerjakan tidak sesuai dengan buku petunjuk akan terjadi kerusakan pada sistem.

  • User penjual

Penjual membaca ketentuan dan panduan tiap menu pada website yang dikhusukan untuk penjual misalkan aturan posting gambar barang, cara memasang iklan bagaimana dan melakukan update iklan

  • User pembeli

Sama halnya dengan penjual terkadang user yang ingin menjadi member terlebih dahulu untuk membaca ketentuan website misalkan bagaimana ketentuan untuk mencari iklan, malekukan negosiasi dengan penjual.

 UCD ( user Centered Design ) merupakan paradigma baru dalam pengembangan sistem berbasis web. Perancangan berbasis pengguna (User Centered design = User Centered Design = UCD) adalah istilah yang yang digunakan untuk untuk menggambarkan filosofi perancangan. Konsep dari UCD adalah user sebagai pusat dari proses pengembangan sistem, dan tujuan/sifat-sifat, konteks dan lingkungan sistem semua didasarkan dari pengalaman pengguna.

Prinsip yang harus diperhatikan dalam UCD adalah:

  • Fokus pada pengguna

Perancangan harus berhubungan langsung dengan pengguna sesungguhnya atau calon pengguna melalui interview, Survey, dan partisipasi dalam workshop perancangan. Tujuannya adalah untuk memahami kognisi, karakter, dan sikap pengguna serta karakteristik anthropometric. Aktivitas utamanya mencakup pengambilan data, analisis dan integrasinya ke dalam informasi perancangan dari pengguna tentang karakteristik tugas, lingkungan teknis, dan organisasi.

  • Perancangan terintergrasi

Perancangan harus mencakup antarmuka pengguna, system bantuan, dukungan teknis serta prosedur instalasi dan konfigurasi.

  • Dari awal berlanjut pada penggujian pengguna Satu-satunya pendekatan yang sukses dalam perancangan system yang berpusat pada pengguna adalah secara empiris dibutuhkan observasi tentang kelakuan pengguna, evaluasi umpan-balik yang cermat, wawasan pemecahan terhadap masalah yang ada, dan motivasi yang kuat untuk mengubah rancangan.
  • Perancangan interaktif.

Sistem yang sedang dikembangkan harus didefinisikan, dirancang, dan ditest berulang kali. Berdasarkan hasil test kelakuan dari fungsi, antarmuka, sistem bantuan, dokumementasi pengguna, dan pendekatan pelatihannya.

UCD adalah tentang partisipasi dan pengalaman manusia dalam proses perancangan. Pengguna adalah orang yang akan menggunakan sistem. Pengguna langsung biasa disebut pengguna akhir ( end user ) yang menggunakan sistem untuk menyelesaikan pekerjaannya. Pengguna tidak langsung adalah pengguna yang menggunakan sistem untuk penggunaan yang lain seperti system administrators, installers, dan demonstrators.

Aturan dalam UCD

Karat telah mendefinisikan hak pengguna untuk mentransformasi budaya yang terdapat dalam perancangan, pengembangan, dan pembuatan sistem teknologi informasi, dan untuk memastikan bahwa produk hasilnya akan tepat seperti harapan pelanggan. Aturan dalam UCD ( User Centered Design )

  • Perspektif

Pengguna selalu benar. Jika terdapat masalah dalam penggunakan sistem, maka masalah ada pada sistem dan bukan pengguna.

  • Installasi

Pengguna mempunyai hak untuk dapat menginstall atau menguninstall perangkat lunak dan perangkat keras sistem secara mudah tanpa ada konsekuensi negatif.

  • Pemenuhan

Pengguna mempunyai hak untuk mendapatkan sistem dapat bekerja persis seperti yang dijanjikan. 

  • Instruksi

Pengguna mempunyai hak untuk dapat menggunakan instruksi secara mudah ( buku petunjuk, bantuan secara on-line atau kontekstual, pesan kesalahan ), untuk memahami dan menggunakan sistem untuk mencapai tujuan yang diinginkan secara efisien dan terhindar dari masalah.

  • Kontrol

Pengguna mempunya hak untuk dapat mengontrol sistem dan mampu membuat sistem menanggapi dengan benar atas permintaan yang diberikan.

  • Umpan Balik

Pengguna mempunyai hak terhadap sistem untuk menyediakan informasi yang jelas, dapat dimengerti, dan akurat tentang tugas yang dilakukan dan kemajuan yang dicapai.

  • Keterkaitan

Pengguna mempunyai hak untuk mendapatkan informasi yang jelas tentang semua prasyarat yang dibutuhkan sistem untuk memperoleh hasil terbaik.

  • Batasan

Pengguna mempunyai hak untuk mengetahui batasan kemampuan sistem.

  • Assistance

Pengguna mempunyai hak untuk dapat berkomunikasi dengan penyedian teknologi dan menerima pemikiran dan tanggapan yang membantu jika diperlukan.

  • Usability

Pengguna harus dapat menjadi penguasa teknologi perangkat lunak dan perangkat keras, dan bukan sebaliknya. Sistem harus dapat dugunakan secara alami dan ituitif.

Proses User Centered Design ( UCD ) ISO 13407 Human Centered Design Process…defines a general process for including human-centered activities throughout a development lifecycle…

 

Image 

Gambar 1. Proses UCD berdasarkan ISO 13407:1999

Keterangan gambar:

Memahami dan menentukan konteks pengguna

  • Karakteristik pengguna yang diharapkan
  • Pekerjaan yang dilakukan pengguna
  • Pemecahan secara hirarki atas pekerjaan global
  • Tujuan global penggunaan sistem untuk setiap kategori pengguna, termasuk karakteristik tugas yang mungkin menggangu penggunaan dalam scenario khusus, seperti frekuensi dan lama kinerja.
  • Deskripsi harus mencakup alokasi aktifitas dan langkah operasional antara manusia dan sumberdaya teknologi.
  • Pahami lingkungan tempat pengguna akan menggunakan system.
  • Sangat penting awal langkah untuk menentukan kebutuhan sistem minimal dan optimal dengan memperhatikan

 

Menentukan kebutuhan pengguna dan Organisasi Dalam UCD penting untuk memperluas aktivitas kebutuhan fungsional sistem dengan membuat pernyataan eksplisit kebutuhan pengguna dan organisasi, dalam hubungannya dengan konteks diskripsi penggunaan dalam hal:

  • Kualitas perancangan interaksi manusia dan computer serta workstation.
  • Kualitas dan isi tugas pengguna ( termasuk alokasi tugas diantara kategori penguna yang berbeda ).
  • Kinerja tugas yang efektif khususnya dalam hal transparasi aplikasi ke pengguna.
  • Kerjasama dan komunikasi yang efektif diantara pengguna dan pikah ketiga yang relevan.
  • Dibutuhkan kinerja sistem baru terhadap tujuan finansial.

Solusi perancangan yang dihasilkan

  • Dengan memgunakan pengetahuan yang ada untuk mengembangkan suatu proposal solusi perancangan.
  • Membuat solusi perancangan lebih konkrit ( dengan simulasi, prototipe, dll ).
  • Memperlihatkan prototipe ke pengguna dan mengamatinya saat melakukan tugas spesifik, dengan atau tanpa bantuan evaluatur.
  • Menggunakan umpan balik untuk perbaikan rancangan,
  • Mengulang proses ini sampai tujuan perancangan dipenuhi.

Evaluasi Perancangan terhadap kebutuhan pengguna

  • Formative: menyediakan umpanbalik yang dapat digunakan untuk memperbaiki rancangan.
  • Summative: melakukan penilaian apakah tujuan pengguna dan organisasi telah tercapai

Model menurut Eason (1992) Eason menggambarkan empat langkah kunci dalam pengembangan, yaitu perencanaan, perancangan, implementasi, dan pengelolaan sistem.

 Image

Gambar 2. Metode UCD menurut Eason

 

Pada gambar diatas terdapat empat pendekatan dalam pengembangan sistem, yaitu:

  1. Soft System Methodology ( SSM ).
  2. Open System Task Analysis ( OSTA ).
  3.  Multivew.
  4. Star Life Circle

Keempat pendekatan diatas mempunyai fokus pengembangan yang berbeda.

5.1 Soft System Methodology ( SSM ) Penekanan SSM tidak pada pencarian solusi untuk suatu masalah, tetapi pada pemahaman situasi dimana masalah yang dirasakan dianggap bukan merupakan akar atau asensi masalah yang sebenarnya. Langkah-langkah Soft System Methodology ( SSM ) adalah

  • Langkah 1 dan 2 difokuskan pada pencarian pernyataan yang lengkap atas situasi permasalahan. Pada langkah ini dilakukan pertemuan yang melibatkan seluruh puhak yang berkepentingan ( stakeholeder ).
  • Langkah 3 mencoba untuk membuat definisi sistem yang presisi.
  • Langkah 4 menggunakan hasil dari langkah 3 berupa pernyataan sistem secara abstrak. Chekland (1981) dan Wilson (1984) menyediakan sejumlah metoda yang dapat digunakan untuk menghasilkan suatu definisi yang formal dan komprehensif tentang sistem. Checkland menamakannya sebagai root definition, yang dapat membantu perancang untuk memastikan bahwa mereka telah mencakup seluruh aspek dari sistem dan menghasilkan definisi akar yang kuat. Definisi tersebut adalah elemen CATWOE: Client, Actors, Transformasi, Weltanshauung ( pandangan dunia), owners, dan environtment.

Perancangan sistem Pameran Online

  • Menentukan root Definition ( akar definisi ) sistem terhadap elemen CATWOE
  • Aspek yang perlu diperhatikan aga sistem berhasil.

Resiko

Penjual

  • Tidak menampilkan produknya di website
  • Tidak menampilkan karakteristik
  • Produk dan harga

Pembeli

  • Pembeli tidak bisa membuka produk atau iklan
  • Pembeli tidak nyaman negosiasi melalui online

Tahapan Perancangan

  • Melibatkan User Sistem
    • Penjual
    • Pembeli
    • Member biasa non registered
    • Menentukan Kebutuhan User dengan OSTA

Evaluasi Sistem

  • Evaluasi Sistem
    • Star Model
      • Prototyping
      • Task Analysis
      • Requirements Analysis
      • Implementation
      • Conceptual Design
      • Customizing

User Pembeli

  1. Memudahkan pembeli untuk melihat produk yang dijual atau iklan. Pada website ditampilkan denah iklan dari penjual dimana jika pembeli menunjuk salah satu denah tersebut maka akan ditampilkan gambar barang, harga dan deskripsi barang tersebut.
  2. Proses membandingkan produk.

Database penawaran layanan jual misalnya diskon atau free delivery dan pruna jual

 User Penjual

Penjual bisa memilih type iklan.

Ada tampilan dena web dimana jika denah tersebut diklik maka akan ditampilkan daftar harga pasang iklan didalam website tersebut.

Penjual bisa mengupdate tampilan denah iklan miliknya.

  • Ada proses otentikasi
  • Ada aplikasi yan memudahkan user untuk mengupdatetampilan di denah website.
  • Ada aplikasi untuk update produk, jenis dan harga.
  1. Fasilitas untuk meng-custom web site diberikan kepada user dan admin dengan pertimbangan kebutuhan dan kepentingan masingmasing pihak.
  2. Fasilitas kustomisasi bagi user : pemilihan bahasa (Indonesia dan English).
  3. Fasilitas kustomisasi bagi administrator bertujuan agar administrator mudah memaintenance serta menyesuaikan tampilan dan content web site sesuai dengan kebutuhan.

 

Fasilitas kustomisasi yang diberikan kepada administrator web site :

  1. Kustomisasi content web site
  2. Kustomisasi image banner dan header
  3. Kustomisasi polling
  4. Kustomisasi SMS
  5. Kustomisasi guest book
  6. Tambah, hapus, edit menu
  7. Pemilihan klasifikasi menu, yang terdiri dari : content utama, potensi dan links.
  8. Tambah, hapus edit sub menu
  9. Pengurutan tampilan menu
  10. Pengisian detail berita pada setiap menu

 

d.                  Tools Preference

Mouse

Tidak semua aktivitas ditangani oleh mouse tetapi peran mouse sendiri sangat bermanfaat bagi user pemula untu menunjuk pointer yang dituju tetapi bagi mereka yang mahir menggunakan keyboard tentu menggunakan keyboard dengan keyword tertentu akan memberi kecepatan akses pointer lebih cepat dari pada mouse. Web ini dirancang menggunakan interface mouse yang sederhana menggunakan tanda panah yang nantinya jika tanda panah tersebut diarahkan pada menu maka akan muncul pop up menu.

Keyboard

Menggunakan standar pada umunya keyboard digunakan untuk menginputkan data user. Web ini mengimplementasikan web yang mempunyai standar inputan internasional seperti america untuk memudahkan sistem dalam mengolah data. Web ini menyediakan keyword khusus untu menuju menu yang diinginkan.

Scrool

Ini digunakan untuk mengakses data yang panjang meskipun peran mouse berpengaruh jika tanpa scroll maka user akan jenuh jika harus mengandalkan mouse terutama bagi user pembeli tentu mereka akan kesulitan dan jenuh dalam mengakses menu atau iklan yang panjang jika tanpa menggunakan fitur scroll.

 

e.                   Pysical Differnces

Web ini dibangun dengan memfokuskan pada user penjual dan pembeli dimana masing-masing mempunyai karakter yang berbeda.

  • User penjual

Untuk penjual terdapat bagian menu yang sedikit rumit tetapi itu merupakan rincian secara detail menu tersebut misalkan terdapat menu iklanku dan didalam iklanku terdapat kategori iklan lagi misal iklan kendaraan, pakaian, rumah atau properti, alat komunikasi dan lain sebagainya. Font yang digunakan menggunakan arial ukuran 12 dengan warna yang kontras dengan background web.

  • User pembeli

Untuk user pembeli cukup dengan menyediakan panel search atau memilih menu kategori barang yang dicari dengan tampilan gambar yan besar dan deskripsi barang yan relatif besar namun singkat misal arial 14.

f.                   Cultural

Design dirancang untuk tujuan jual beli secara online dengan menitik beratkan pada tampilan gambar yang cukup besar dan tampilan font yang cukup besar pula ini memudahkan user atau pengguna untuk semua kalangan dimana gambar yang besar cukup mewakili beberapa deskripsi barang tersebut. Terutama orang awam lebih menyukai tampilan gambar dengan sedikit ulasan atau keterangan gambar tersebut yang mungkin dianggap menjenuhkan tentu berbeda jika web disajikan kepada pihak perkantoran yang lebih memfokuskan kepada deskripsi program yan ada didalam perkantoran tersebut.

 

g.                  Application Familiarity

Menu-menu yang disajikan dirancang sederhana namun menarik dan tidak menjenuhkan dengan tampilan gambar dan font serta warna yang seimbang. Bagi user pemula tentu tidak akan mengalami kesulitan ketika mengakses web ini dengan tampilan gambar, ikon dan menu yang cukup besar. Setiap menu memiliki submenu yang didalamnya terdapat menu  yang spesifik dan detail ini ditujukan untuk user penjual dalam menata ruang iklan yang dibuatnya sesuai dengan keinginan

.

h.                  Primary and Secondary User

Web ini menyediakan hak akses terhadap fasilitas yang ada di web dimana user yang terdaftar bisa mnegakses iklan dengan lebih cepat karena sistem sudah mengidentifikasi bahwa user tersebut terdaftar. User terdaftar dapat melakukan negosiasi dengan pihak penjual untuk mendapatkan harga yang pas. User penjual dapat menikmati fasilitas memasang iklan dan mengatur tata letak iklannya. User bukan member akan diberikan akses tutorial singkat tentang website.

 

 

BAB III

DESAIN WEB

 

1.      Halaman awal web

 Image 

 

 

 

 

 

 

 

 

2.      Contet organization 

 Image

3.      Navigation

 Image

HOMEPAGE

HOME

IKLANKU

MENU KATEGORI IKLAN

IKLAN KENDARAAN

HELP & SERACH

IKLAN RUMAH & PROPERTI

IKLAN KOMUNIKASI

RODA 4

RODA 2

LAIN-LAIN

RUMAH

TANAH

LAIN-LAIN

PONSEL & TABLET

 

 

Tinggalkan komentar

Filed under Uncategorized

Materi Kuliah : Kecakapan antar personal

TEORI HUBUNGAN MANUSIA (EMMANUEL LEVINAS)

  1. Biologis : komunikasi/hubungan dengan anggota badan
  2. Non-verbal :
  • Kinesic : komunikasi anggota badan
  • Occulesic : komunikasi mata
  • Proxemic : komunikasi jarak tubuh
  1. Ekonomis : komunikasi karena kebutuhan ekonomi
  2. Estetis : komunikasi karena ketertarikan & kenyamanan
  3. Etis : komunikais karena manusia saling membutuhkan

HUBUNGAN TIMBAL BALIK

  1. Asosiatif : menagakrabkan hubungan antar manusia
  2. Akomodatif : menghargai ide orang
  3. Asimilasi : menekankan kesamaan ide
  4. Akulturasi : menerima ide orang & mau berubah lebih baik
  5. Kompetsis : bersikap untuk bersaing
  6. Kontraversi : tidak menerima kekalahan
  7. Konflik : sikap menantang

TEORI KOMUNIKASI

  1. Wilbur Schram : adanya sender, receiver, pesan & frame (pengalaman)
  2. Jack Duncan : attention, understanding (bersedia berkomunikasi responsif)
  3. Joseph A Devito : keterbukaan, kesamaan, empati, dukungan & positif

GANGGUAN PROSES KOMUNIKASI

  1. Environment distortion : gangguan lingkungan
  2. Experince by pass : komunikasi tidak melihat lawan bicara
  3. Use of technical term : komunikasi dengan istilah asing
  4. Status gap : perbedaan posisi jabatan

PEMAHAMAN SOFTSKILL

  1. Aspek teknis : latar belakang keahlian
  2. Aspek non teknis : motivasi, komunikasi, adaptasi, kerjasama & solving manajemen

PEGAWAI VS WIRAUSAHA

  1. Pegawai : kompetensi IPK tinggi
  2. Wirausaha : kompetensi teknis & non teknis

PERGURUAN TINGGI VS PERUSAHAAN

  1. Perguruan tinggi : paham konsep tapi minim pengalaman & keahlian dilapangan
  2. Perusahaan : paham pengalaman & lapangan tapi minim konsep

PENINGKATAN SOFTSKILL (Patrick S O’Brien dalam Making College Count)

  1. Kemampuan komunikasi
  2. Kemampuan organisasi
  3. Kepemimpinan
  4. Logika
  5. Sikap
  6. Kemampuan dalam grup
  7. Etika

CONTOH PENINGKATAN SOFTSKILL

  1. KKN
  2. PKL
  3. Program DIKTI
  4. Pelatihan & seminar
  5. Aktif dalam organisasi

PEMAHAMAN TENTANG KOMPETENSI

  1. Kecakapan dasar manusia
  2. Pengetahuan & keterampilan
  3. Pengetahuan, keterampilan & sikap

KECAKAPAN DASAR KURTSINGER

  1. Kecakapn negosiasi
  2. Kecakapan megatasi konflik
  3. Kecakapan mengatasi pluralisme

KOMPETENSI MENURUT KIHADJARDEWANTARA

Agar manusia dapat hidup perlu mempunyai kecakapan dasar, memiliki pengetahuan, keterampilan yang dapat dipelajari dengan otak, sikap yang arif, rendah hati & manusiawi.

VISI PENDIDIKAN UNESCO

  1. Belajar mengetahui & memahami
  2. Belajar mengerjakan sesuatu
  3. Belajar menjadi diri sendiri
  4. Belajar hidup bersama

PENGEMBANGAN POTENSI STEPHEN R COVEY

  1. Proaktif
  2. Merujuk tujuan akhir
  3. Prioritas
  4. Paradigma
  5. Cepat memahami
  6. Sinergi
  7. Mengasah kemampuan

SOFTSKILL : kemampuan interpersonal diluar kemampuan teknis & akademis

  1. Interpersonal : keterbukaan dengan dunia luar, empati dan kecakapan sosial.
  2. Intrapersonal : kemampuan mengolah potensi diri sendiri.

HARDSKILL : kompetensi teknis & akademis

KETERAMPILAN SOFTSKILL

  1. Komunikasi terampil & efektif
  2. Inovasi & kreatif
  3. Berpikir analitis
  4. Fleksibilats
  5. Adaptasi
  6. Bersikap yang benar
  7. Keterampilan interpersonal
  8. Negosiasi
  9. Persuasif
  10. Keterampilan mengatur waktu
  11. Problem solving skill
  12. Kemampuan memimpin & membangun tim

MENURUT NACE USA 2002 (NATIONAL ASSOCIATION OF COLLEGE & EMPLOYEE)

  1. Kemampuan komunikasi
  2. Kejujuran / integritas
  3. Teamwork
  4. Interpersonal skill
  5. Etika, motivasi, adaptasi, negosiasi, akses komputer & daya analisis
  6. Organisasi, bekerja secara detail, kepemimpinan, kepercayaan diri & ramah
  7. Sopan, bijaksana, berprestasi, kretaif, humoris & kemampuan untuk wirausaha

ATRIBUT SOFTSKILL

  1. Prinsip, motivasi, prilaku, kebiasaan & sikap
  2. Softskill setiap orang berbeda dan bisa ditingkatkan intrapersonal sebalum interpersoal sebagai kebiasaan yang baik dan teratur.
  3. Softskill dipengaruhi oleh mindset (pola pikir), perkataan, tindakan & sikap

INTRAPERSONAL SOFTSKILL (KETERAMPILAN MEMBENAHI DIRI)

  1. Merubah karakter
  2. Percaya diri
  3. Perubahan lebih baik
  4. Membenahi permasalahan
  5. Mengatur waktu
  6. Berpikir kreatif
  7. Mengatur tujuan baik
  8. Adaptasi

INTERPERSONAL SOFTSKILL (KETERAMPILAN BERHUBGAN DENGAN PIHAK LUAR)

  1. Kemampuan mengoperasikan komputer
  2. Membangun relasi
  3. Motivasi
  4. Kepemimpinan
  5. Kemampuan berwirausaha
  6. Kemampuan negosiasi
  7. Kemampuan komunikasi & presentasi

LISTENING

  1. Mendengarkan & memahaminya
  2. Mendengar & bertanya
  3. Mendengar tanpa bertanya
  4. Mengembangkan pembahasan pembicara
  5. Mendengar untuk memperoleh ilmu & pengetahuan
  6. Mendengar sekadar saja
  7. Mendengar untuk menghormati
  8. Mendengar tanpa memahami

HAMBATAN LISTENING

  1. Sibuk diri sendiri
  2. Sibuk masalah pribadi
  3. Tidak fokus
  4. Faktor lingkungan
  5. Cara mengatasi : fokus, belajar memahami, menganalisi & mengkoreksi.
  6. Meringkas inti pembahasan
  7. Berempati (turut merasakan sebagai pembicara)
  8. Mendengar & fokus pada pemecahan masalah

PEDOMAN

  1. Lakukan dialog
  2. Memahami lawan bicara
  3. Memandang imbang lawan
  4. Berpikir positif
  5. Menilai secara objektif
  6. Tidak pilih kasih terhadap ide yang muncul
  7. Cekatan
  8. Mengajukan pertanyaan sesuai bahasan
  9. Merespon dengan sikap yang baik dan pandangan mengarah pembicara
  10. Kejujuran, kesegaran, kepatutan, kejelasan, kepekaan, dukungan, keterbukaan

Tinggalkan komentar

Filed under Kuliah

Materi Kuliah: Sistem berkas

SISTEM BERKAS

Pengertian
Sistem berkas merupakan mekanisme penyimpanan online serta untuk akses, baik data mau pun program yang berada dalam Sistem Operasi. Terdapat dua bagian penting dalam sistem berkas, yaitu:
• Kumpulan berkas, sebagai tempat penyimpanan data, serta
• Struktur direktori, yang mengatur dan menyediakan informasi mengenai seluruh berkas dalam sistem.

Konsep Dasar Berkas
Seperti yang telah kita ketahui, komputer dapat menyimpan informasi ke beberapa media penyimpanan yang berbeda, seperti magnetic disks, magnetic tapes, dan optical disks. Agar komputer dapat digunakan dengan nyaman, sistem operasi menyediakan sistem penyimpanan dengan sistematika yang seragam. Sistem Operasi mengabstraksi properti fisik dari media penyimpanannya dan mendefinisikan unit penyimpanan logis, yaitu berkas. Berkas dipetakan ke media fisik oleh sistem operasi. Media penyimpanan ini umumnya bersifat non-volatile, sehingga kandungan di dalamnya tidak akan hilang jika terjadi gagal listrik mau pun system reboot.

Berkas adalah kumpulan informasi berkait yang diberi nama dan direkam pada penyimpanan sekunder. Dari sudut pandang pengguna, berkas merupakan bagian terkecil dari penyimpanan logis, artinya data tidak dapat ditulis ke penyimpanan sekunder kecuali jika berada di dalam berkas. Biasanya berkas merepresentasikan program (baik source mau pun bentuk objek) dan data. Data dari berkas dapat bersifat numerik, alfabetik, alfanumerik, atau pun biner. Format berkas juga bisa bebas, misalnya berkas teks, atau dapat juga diformat pasti. Secara umum, berkas adalah urutan bit, byte, baris, atau catatan yang didefinisikan oleh pembuat berkas dan pengguna.

Informasi dalam berkas ditentukan oleh pembuatnya. Ada banyak beragam jenis informasi yang dapat disimpan dalam berkas. Hal ini disebabkan oleh struktur tertentu yang dimiliki oleh berkas, sesuai dengan jenisnya masing-masing. Contohnya:
• Text file; yaitu urutan karakter yang disusun ke dalam baris-baris.
• Source file; yaitu urutan subroutine dan fungsi, yang nantinya akan dideklarasikan.
• Object file; merupakan urutan byte yang diatur ke dalam blok-blok yang dikenali oleh linker dari sistem.
• Executable file; adalah rangkaian code section yang dapat dibawa loader ke dalam memori dandieksekusi.

Atribut Pada Berkas
Berkas diberi nama, untuk kenyamanan bagi pengguna, dan untuk acuan bagi data yang terkandung di dalamnya. Nama berkas biasanya berupa string atau karakter. Beberapa sistem membedakan penggunaan huruf besar dan kecil dalam penamaan sebuah berkas, sementara sistem yang lain menganggap kedua hal di atas sama. Ketika pengguna, bahkan sistem yang membuatnya. Atribut berkas terdiri dari:
• Nama; merupakan satu-satunya informasi yang tetap dalam bentuk yang bisa dibaca oleh manusia (human-readable form).
• Type; dibutuhkan untuk sistem yang mendukung beberapa type berbeda.
• Lokasi; merupakan pointer ke device dan ke lokasi berkas pada device tersebut.
• Ukuran (size); yaitu ukuran berkas pada saat itu, baik dalam byte, huruf, atau pun blok.
• Proteksi; adalah informasi mengenai kontrol akses, misalnya siapa saja yang boleh membaca, menulis, dan mengeksekusi berkas.
• Waktu, tanggal dan identifikasi pengguna; informasi ini biasanya disimpan untuk:
1. Pembuatan berkas,
2. Modifikasi terakhir yang dilakukan pada berkas, dan
3. Penggunaan terakhir berkas.

Data tersebut dapat berguna untuk proteksi, keamanan, dan monitoring penggunaan dari berkas. Informasi tentang seluruh berkas disimpan dalam struktur direktori yang terdapat pada penyimpanan sekunder. Direktori, seperti berkas, harus bersifat non-volatile, sehingga keduanya harus disimpan pada sebuah device dan baru dibawa bagian per bagian ke memori pada saat dibutuhkan.

Operasi Pada Berkas
Sebuah berkas adalah jenis data abstrak. Untuk mendefinisikan berkas secara tepat, kita perlu melihat operasi yang dapat dilakukan pada berkas tersebut. Sistem operasi menyediakan system calls untuk membuat, membaca, menulis, mencari, menghapus, dan sebagainya. Berikut dapat kita lihat apa yang harus dilakukan sistem operasi pada keenam operasi dasar pada berkas.

• Membuat sebuah berkas: Ada dua cara dalam membuat berkas. Pertama, tempat baru di dalam sistem berkas harus di alokasikan untuk berkas yang akan dibuat. Kedua, sebuah direktori harus mempersiapkan tempat untuk berkas baru, kemudian direktori tersebut akan mencatat nama berkas dan lokasinya pada sistem berkas.

• Menulis pada sebuah berkas: Untuk menulis pada berkas, kita menggunakan system call beserta nama berkas yang akan ditulisi dan informasi apa yang akan ditulis pada berkas. Ketika diberi nama berkas, sistem mencari ke direktori untuk mendapatkan lokasi berkas. Sistem juga harus menyimpan penunjuk tulis pada berkas dimana penulisan berikut akan ditempatkan. Penunjuk tulis harus diperbaharui setiap terjadi penulisan pada berkas.

• Membaca sebuah berkas: Untuk dapat membaca berkas, kita menggunakan system call beserta nama berkas dan di blok memori mana berkas berikutnya diletakkan. Sama seperti menulis, direktori mencari berkas yang akan dibaca, dan sistem menyimpan penunjuk baca pada berkas dimana pembacaan berikutnya akan terjadi. Ketika pembacaan dimulai, penunjuk baca harus diperbaharui.Sehingga secara umum, suatu berkas ketika sedang dibaca atau ditulis, kebanyakan sistem hanya mempunyai satu penunjuk, baca dan tulis menggunakan penunjuk yang sama, hal ini menghemat tempat dan mengurangi kompleksitas system.

• Menempatkan kembali sebuah berkas: Direktori yang bertugas untuk mencari berkas yang bersesuaian, dan mengembalikan lokasi berkas pada saat itu. Menempatkan berkas tidak perlu melibatkan proses I/O. Operasi sering disebut pencarian berkas.

• Menghapus sebuah berkas: Untuk menghapus berkas kita perlu mencari berkas tersebut di dalam direktori. Setelah ditemukan kita membebaskan tempat yang dipakai berkas tersebut (sehingga dapat digunakkan oleh berkas lain) dan menghapus tempatnya di direktori.

• Memendekkan berkas: Ada suatu keadaan dimana pengguna menginginkan atribut dari berkas tetap sama tetapi ingin menghapus isi dari berkas tersebut. Fungsi ini mengizinkan semua atribut tetap sama tetapi panjang berkas menjadi nol, hal ini lebih baik dari pada memaksa pengguna untuk menghapus berkas dan membuatnya lagi.

Enam operasi dasar ini sudah mencakup operasi minimum yang di butuhkan. Operasi umum lainnya adalah menyambung informasi baru di akhir suatu berkas, mengubah nama suatu berkas, dan lain-lain. Operasi dasar ini kemudian digabung untuk melakukan operasi lainnya. Sebagai contoh misalnya kita menginginkan salinan dari suatu berkas, atau menyalin berkas ke peralatan I/O lainnya seperti printer, dengan cara membuat berkas lalu membaca dari berkas lama dan menulis ke berkas yang baru. Hampir semua operasi pada berkas melibatkan pencarian berkas pada direktori. Untuk menghindari pencarian yang lama, kebanyakan sistem akan membuka berkas apabila berkas tersebut digunakan secara aktif. Sistem operasi akan menyimpan tabel kecil yang berisi informasi semua berkas yang dibuka yang disebut “tabel berkas terbuka”. Ketika berkas sudah tidak digunakan lagi dan sudah ditutup oleh yang menggunakan, maka sistem operasi mengeluarkan berkas tersebut dari tabel berkas terbuka. Beberapa sistem terkadang langsung membuka berkas ketika berkas tersebut digunakan dan otomatis menutup berkas tersebut jika program atau pemakainya dimatikan. Tetapi pada sistem lainnya terkadang membutuhkan pembukaan berkas secara tersurat dengan system call (open) sebelum berkas dapat digunakan. Implementasi dari buka dan tutup berkas dalam lingkungan dengan banyak perngguna seperti UNIX, lebih rumit. Dalam sistem seperti itu pengguna yang membuka berkas mungkin lebih dari satu dan pada waktu yang hampir bersamaan. Umumnya sistem operasi menggunakan tabel internal dua level. Ada tabel yang mendata proses mana saja yang membuka berkas tersebut, kemudian tabel tersebut menunjuk ke tabel yang lebih besar yang berisi informasi yang berdiri sendiri seperti lokasi berkas pada disk, tanggal akses dan ukuran berkas. Biasanya tabel tersebut juga memiliki data berapa banyak proses yang membuka berkas tersebut.

Jadi, pada dasarnya ada beberapa informasi yang terkait dengan pembukaan berkas yaitu:
• Penunjuk Berkas: Pada sistem yang tidak mengikutkan batas berkas sebagai bagian dari system call baca dan tulis, sistem tersebut harus mengikuti posisi dimana terakhir proses baca dan tulis sebagai penunjuk. Penunjuk ini unik untuk setiap operasi pada berkas, maka dari itu harus disimpan terpisah dari atribut berkas yang ada pada disk.

• Penghitung berkas yang terbuka: Setelah berkas ditutup, sistem harus mengosongkan kembali tabel berkas yang dibuka yang digunakan oleh berkas tadi atau tempat di tabel akan habis. Karena mungkin ada beberapa proses yang membuka berkas secara bersamaan dan sistem harus menunggu sampai berkas tersebut ditutup sebelum mengosongkan tempatnya di tabel. Penghitung ini mencatat banyaknya berkas yang telah dibuka dan ditutup, dan menjadi nol ketika yang terakhir membaca berkas menutup berkas tersebut barulah sistem dapat mengosongkan tempatnya di tabel.

• Lokasi berkas pada disk: Kebanyakan operasi pada berkas memerlukan sistem untuk mengubah data yang ada pada berkas. Informasi mengenai lokasi berkas pada disk disimpan di memori agar menghindari banyak pembacaan pada disk untuk setiap operasi.

Beberapa sistem operasi menyediakan fasilitas untuk memetakan berkas ke dalam memori pada sistem memori virtual. Hal tersebut mengizinkan bagian dari berkas ditempatkan pada suatu alamat di memori virtual. Operasi baca dan tulis pada memori dengan alamat tersebut dianggap sebagai operasi baca dan tulis pada berkas yang ada di alamat tersebut. Menutup berkas mengakibatkan semua data yang ada pada alamat memori tersebut dikembalikan ke disk dan dihilangkan dari memori virtual yang digunakan oleh proses.

Jenis Berkas
Pertimbangan utama dalam perancangan sistem berkas dan seluruh sistem operasi, apakah sistem operasi harus mengenali dan mendukung jenis berkas. Jika suatu sistem operasi mengenali jenis dari berkas, maka ia dapat mengoperasikan berkas tersebut. Contoh apabila pengguna mencoba mencetak berkas yang merupakan kode biner dari program yang pasti akan menghasilkan sampah, hal ini dapat dicegah apabila sistem operasi sudah diberitahu bahwa berkas tersebut merupakan kode biner.

Teknik yang umum digunakan dalam implementasi jenis berkas adalah menambahkan jenis berkas dalam nama berkas. Nama dibagi dua, nama dan akhiran (ekstensi), biasanya dipisahkan dengan karakter titik. Sistem menggunakan akhiran tersebut untuk mengindikasikan jenis berkas dan jenis operasi yang dapat dilakukan pada berkas tersebut. Sebagai contoh hanya berkas yang berakhiran .bat, .exe atau .com yang bisa dijalankan (eksekusi). Program aplikasi juga menggunakan akhiran tersebut untuk mengenal berkas yang dapat dioperasikannya. Akhiran ini dapat ditimpa atau diganti jika diperbolehkan oleh sistem operasi. Beberapa sistem operasi
menyertakan dukungan terhadap akhiran, tetapi beberapa menyerahkan kepada aplikasi untuk mengatur akhiran berkas yang digunakan, sehingga jenis dari berkas dapat menjadi petunjuk aplikasi apa yang dapat mengoperasikannya.

Sistem UNIX tidak dapat menyediakan dukungan untuk akhiran berkas karena menggunakan angka ajaib yang disimpan di depan berkas untuk mengenali jenis berkas. Tidak semua berkas memiliki angka ini, jadi sistem tidak bisa bergantung pada informasi ini. Tetapi UNIX memperbolehkan akhiran berkas tetapi hal ini tidak dipaksakan atau tergantung sistem operasi, kebanyakan hanya untuk membantu pengguna mengenali jenis isi dari suatu berkas.

Berkas Jenis berkas Akhiran Fungsi
executable exe, com, bat, bin program yang siap dijalankan
objek obj, o bahasa mesin, kode terkompilasi
Source code c, cc, pas, java, asm, a kode asal dari berbagai bahasa
batch bat, sh perintah pada shell
text txt, doc data text, document
pengolah kata wpd, tex, doc format jenis pengolah data
library lib, a, DLL library untuk rutin program
print, gambar ps, dvi, gif format aSCII atau biner untuk dicetak
archive arc, zip, tar beberapa berkas yang dikumpulkan menjadi satu berkas. Terkadang dimampatkan untuk
Struktur Berkas
Kita juga dapat menggunakan jenis berkas untuk mengidentifikasi struktur dalam dari berkas. Berkas berupa source dan objek memiliki struktur yang cocok dengan harapan program yang membaca berkas tersebut. Suatu berkas harus memiliki struktur yang dikenali oleh sistem operasi. Sebagai contoh, sistem operasi menginginkan suatu berkas yang dapat dieksekusi memiliki struktur tertentu agar dapat diketahui dimana berkas tersebut akan ditempatkan di memori dan di mana letak instruksi pertama berkas tersebut. Beberapa sistem operasi mengembangkan ide ini sehingga mendukung beberapa struktur berkas, dengan beberapa operasi khusus untuk memanipulasi berkas dengan struktur tersebut.

Kelemahan memiliki dukungan terhadap beberapa struktur berkas adalah: Ukuran dari sistem operasi dapat menjadi besar, jika sistem operasi mendefinisikan lima struktur berkas yang berbeda maka ia perlu menampung kode untuk yang diperlukan untuk mendukung semuanya. Setiap berkas harus dapat menerapkan salah satu struktur berkas tersebut. Masalah akan timbul ketika terdapat aplikasi yang membutuhkan struktur informasi yang tidak didukung oleh sistem operasi tersebut.

Beberapa sistem operasi menerapkan dan mendukung struktur berkas sedikit struktur berkas. Pendekatan ini digunakan pada MS-DOS dan UNIX. UNIX menganggap setiap berkas sebagai urutan 8-bit byte, tidak ada interpretasi sistem operasi terhadap dari bit-bit ini. Skema tersebut menawarkan fleksibilitas tinggi tetapi dukungan yang terbatas. Setiap aplikasi harus menambahkan sendiri kode untuk menerjemahkan berkas masukan ke dalam struktur yang sesuai. Walau bagaimana pun juga sebuah sistem operasi harus memiliki minimal satu struktur berkas yaitu untuk berkas yang dapat dieksekusi sehingga sistem dapat memuat berkas dalam memori dan menjalankannya.

Sangat berguna bagi sistem operasi untuk mendukung struktur berkas yang sering digunakan karena akan menghemat pekerjaan pemrogram. Terlalu sedikit struktur berkas yang didukung akan mempersulit pembuatan program, terlalu banyak akan membuat sistem operasi terlalu besar dan pemrogram akan bingung. ke dalam ’physical record’ merupakan solusi umum dari masalah ini. Sebagai contoh pada sistem operasi UNIX, semua berkas didefinisikan sebagai kumpulan byte. Setiap byte dialamatkan menurut batasnya dari awal berkas sampai akhir. Pada kasus ini ukuran ’logical record’ adalah 1 byte. Sistem berkas secara otomatis memuatkan byte-byte tersebut kedalam blok pada disk. Ukuran ’logical record’, ukuran blok pada disk, dan teknik untuk memuatkannya menjelaskan berapa banyak ’logical record’ dalam tiap-tiap ’physical record’. Teknik memuatkan dapat dilakukan oleh aplikasi pengguna atau oleh sistem operasi.

Berkas juga dapat dianggap sebagai urutan dari beberapa blok pada disk. Konversi dari ’logical record’ ke ’physical record’ merupakan masalah perangkat lunak. Tempat pada disk selalu berada pada blok, sehingga beberapa bagian dari blok terakhir yang ditempati berkas dapat terbuang. Jika setiap blok berukuran 512 byte, sebuah berkas berukuran 1.949 byte akan menempati empat blok (2.048 byte) dan akan tersisa 99 byte pada blok terakhir. Byte yang terbuang tersebut dipertahankan agar ukuran dari unit tetap blok bukan byte disebut fragmentasi dalam disk. Semua sistem berkas pasti mempunyai fragmentasi dalam disk, semakin besar ukuran blok akan semakin besar fragmentasi dalam disknya.

Penggunaan Berkas Secara Bersama-sama
Konsistensi semantik adalah parameter yang penting untuk evaluasi sistem berkas yang mendukung penggunaan berkas secara bersama. Hal ini juga merupakan karakterisasi dari sistem yang menspesifikasi semantik dari banyak pengguna yang mengakses berkas secara bersama-sama. Lebih khusus, semantik ini seharusnya dapat menspesifikasi kapan suatu modifikasi suatu data oleh satu pengguna dapat diketahui oleh pengguna lain.
• Terdapat beberapa macam konsistensi semantik. Di bawah ini akan dijelaskan kriteria yang digunakan dalam UNIX. Berkas sistem UNIX mengikuti konsistensi semantik: Penulisan ke berkas yang dibuka oleh pengguna dapat dilihat langsung oleh pengguna lain yang sedang mengakses ke berkas yang sama.

• Terdapat bentuk pembagian dimana pengguna membagi pointer lokasi ke berkas tersebut. Sehingga perubahan pointer satu pengguna akan mempengaruhi semua pengguna sharingnya.

METODE AKSES

1. Akses Secara Berurutan (Sequential Access).
Ketika digunakan, informasi penyimpanan berkas harus dapat diakses dan dibaca ke dalam memori komputer. Beberapa sistem hanya menyediakan satu metode akses untuk berkas. Pada sistem yang lain, contohnya IBM, terdapat banyak dukungan metode akses yang berbeda. Masalah pada sistem tersebut adalah memilih yang mana yang tepat untuk digunakan pada satu aplikasi tertentu. Sequential Access merupakan metode yang paling sederhana. Informasi yang disimpan dalam berkas diproses berdasarkan urutan. Operasi dasar pada suatu berkas adalah tulis dan baca. Operasi baca membaca berkas dan meningkatkan pointer berkas selama di jalur lokasi I/O. Operasi tulis menambahkan ke akhir berkas dan meningkatkan ke akhir berkas yang baru. Metode ini didasarkan pada tape model sebuah berkas, dan dapat bekerja pada kedua jenis device akses (urut mau pun acak).

2. Akses Langsung (Direct Access)
Direct Access merupakan metode yang membiarkan program membaca dan menulis dengan cepat pada berkas yang dibuat dengan fixed-length logical order tanpa adanya urutan. Metode ini sangat berguna untuk mengakses informasi dalam jumlah besar. Biasanya database memerlukan hal seperti ini. Operasi berkas pada metode ini harus dimodifikasi untuk menambahkan nomor blok sebagai parameter. Pengguna menyediakan nomor blok ke sistem operasi biasanya sebagai nomor blok relatif, yaitu indeks relatif terhadap awal berkas. Penggunaan nomor blok relatif bagi sistem operasi adalah untuk memutuskan lokasi berkas diletakkan dan membantu mencegah pengguna dari pengaksesan suatu bagian sistem berkas yang bukan bagian pengguna tersebut.

3. Akses Dengan Menggunakan Indeks
Metode ini merupakan hasil dari pengembangan metode direct access. Metode ini memasukkan indeks untuk mengakses berkas. Jadi untuk mendapatkan suatu informasi suatu berkas, kita mencari dahulu di indeks, lalu menggunakan pointer untuk mengakses berkas dan mendapatkan informasi tersebut. Namun metode ini memiliki kekurangan, yaitu apabila berkas-berkas besar, maka indeks berkas tersebut akan semakin besar. Jadi solusinya adalah dengan membuat 2 indeks, indeks primer dan indeks sekunder. Indeks primer memuat pointer ke indeks sekunder, lalu indeks sekunder menunjuk ke data yang dimaksud.

STRUKTUR DIREKTORI

1. Operasi Pada Direktori
Operasi-operasi yang dapat dilakukan pada direktori adalah:
a. Mencari berkas, kita dapat menemukan sebuah berkas didalam sebuah struktur direktori. Karena berkas-berkas memiliki nama simbolik dan nama yang sama dapat mengindikasikan keterkaitan antara setiap berkas-berkas tersebut, mungkin kita berkeinginan untuk dapat menemukan seluruh berkas yang nama-nama berkas membentuk pola khusus.

b. Membuat berkas, kita dapat membuat berkas baru dan menambahkan berkas tersebut kedalam direktori.

c. Menghapus berkas, apabila berkas sudah tidak diperlukan lagi, kita dapat menghapus berkas tersebut dari direktori.

Menampilkan isi direktori, kita dapat menampilkan seluruh berkas dalam direktori, dan kandungan isi direktori untuk setiap berkas dalam daftar tersebut.
a. Mengganti nama berkas, karena nama berkas merepresentasikan isi dari berkas kepada user, maka user dapat merubah nama berkas ketika isi atau penggunaan berkas berubah. Perubahan nama dapat merubah posisi berkas dalam direktori.

b. Melintasi sistem berkas, ini sangat berguna untuk mengakses direktori dan berkas didalam struktur direktori.

a. Direktori Satu Tingkat
Ini adalah struktur direktori yang paling sederhana. Semua berkas disimpan di dalam direktori yang sama. Struktur ini tentunya memiliki kelemahan jika jumlah berkasnya bertambah banyak, karena tiap berkas mesti memiliki nama yang unik.

b. Direktori Dua Tingkat
Kelemahan yang ada pada direktori tingkat satu dapat diatas pada sistem direktori dua tingkat. Caranya ialah dengan membuat direktori secara terpisah. Pada direktori tingkat dua, setiap pengguna memiliki direktori berkas sendiri (UFD). Setiap UFD memiliki struktur yang serupa, tapi hanya berisi berkas-berkas dari seorang pengguna.

Ketika seorang pengguna login, master direktori berkas (MFD) dicari. Isi dari MFD adalah indeks dari nama pengguna atau nomor rekening, dan tiap entri menunjuk pada UFD untuk pengguna tersebut. Ketika seorang pengguna ingin mengakses suatu berkas, hanya UFD-nya sendiri yang diakses. Jadi pada setiap UFD yang berbeda, boleh terdapat nama berkas yang sama.

c. Direktori Dengan Struktur Tree
Struktur direktori dua tingkat bisa dikatakan sebagai pohon dua tingkat. Sebuah direktori dengan struktur pohon memiliki sejumlah berkas atau subdirektori lagi. Pada penggunaan yang normal setiap pengguna memiliki direktorinya sendiri-sendiri. Selain itu pengguna tersebut dapat memiliki subdirektori sendiri lagi. Dalam struktur ini dikenal dua istilah, yaitu path relatif dan path mutlak. Path relatif adalah path yang dimulai dari direktori yang aktif. Sedangkan path mutlak adalah path yang dimulai dari direktori akar.

d. Direktori Dengan Struktur Acyclic-Graph
Jika ada sebuah berkas yang ingin diakses oleh dua pengguna atau lebih, maka struktur ini menyediakan fasilitas “sharing”, yaitu penggunaan sebuah berkas secara bersama-sama. Hal ini tentunya berbeda dengan struktur pohon, dimana pada struktur tersebut penggunaan berkas atau direktori secara bersama-sama dilarang. Pada struktur “Acyclic-Graph”, penggunaan berkas atau direktori secara bersama-sama diperbolehkan. Tapi pada umumnya struktur ini mirip dengan struktur pohon.

e. Direktori Dengan Struktur Graph
Masalah yang sangat utama pada struktur direktori “Acyclic-Graph” adalah kemampuan untuk memastikan tidak-adanya siklus. Jika pada struktur 2 tingkat direktori, seorang pengguna dapat membuat subdirektori, maka akan kita dapatkan direktori dengan struktur pohon. Sangatlah mudah untuk tetap mempertahankan sifat pohon setiap kali ada penambahan berkas atau subdirektori pada direktori dengan struktur pohon. Tapi jika kita menambahkan sambungan pada direktori dengan struktur pohon, maka akan kita dapatkan direktori dengan struktur graph sederhana.

Proses pencarian pada direktori dengan struktur “Acyclic-Graph”, apabila tidak ditangani dengan baik (algoritma tidak bagus) dapat menyebabkan proses pencarian yang berulang dan menghabiskan banyak waktu. Oleh karena itu, diperlukan skema pengumpulan sampah (“garbage-collection scheme”). Skema ini menyangkut memeriksa seluruh sistem berkas dengan menandai tiap berkas yang dapat diakses. Kemudian mengumpulkan apa pun yang tidak ditandai sebagai tempat kosong. Hal ini tentunya dapat menghabiskan banyak waktu.

PROTEKSI BERKAS

Ketika kita menyimpan informasi dalam sebuah sistem komputer, ada dua hal yang harus menjadi perhatian utama kita. Hal tersebut adalah:

1. Reabilitas dari sebuah sistem
Maksud dari reabilitas sistem adalah kemampuan sebuah sistem untuk melindungi informasi yangtelah disimpan agar terhindar dari kerusakan, dalam hal ini adalah perlindungan secara fisik pada sebuah berkas. Reabilitas sistem dapat dijaga dengan membuat cadangan dari setiap berkas secaramanual atau pun otomatis, sesuai dengan layanan yang dari sebuah sistem operasi. Reabilitas Sistemakan dibahas lebih lanjut pada Bagian 6.10.

2. Proteksi (Perlindungan) terhadap sebuah berkas
Perlindungan terhadap berkas dapat dilakukan dengan berbagai macam cara. Pada bagian ini, kita akan membahas secara detil mekanisme yang diterapkan dalam melindungi sebuah berkas.

Tipe Akses Pada Berkas
Salah satu cara untuk melindungi berkas dalam komputer kita adalah dengan melakukan pembatasan akses pada berkas tersebut. Pembatasan akses yang dimaksudkan adalah kita, sebagai pemilik dari sebuah berkas, dapat menentukan operasi apa saja yang dapat dilakukan oleh pengguna lain terhadap berkas tersebut. Pembatasan ini berupa sebuah permission atau pun not permitted operation, tergantung pada kebutuhan pengguna lain terhadap berkas tersebut. Di bawah ini adalah beberapa operasi berkas yang dapat diatur aksesnya:
1. Read: Membaca dari berkas
2. Write: Menulis berkas
3. Execute: Meload berkas kedalam memori untuk dieksekusi.
4. Append: Menambahkan informasi kedalam berkas di akhir berkas.
5. Delete: Menghapus berkas.
6. List: Mendaftar properti dari sebuah berkas.
7. Rename: Mengganti nama sebuah berkas.
8. Copy: Menduplikasikan sebuah berkas.
9. Edit: Mengedit sebuah berkas.
Selain operasi-operasi berkas diatas, perlindungan terhadap berkas dapat dilakukan dengan mekanisme yang lain. Namun setiap mekanisme memiliki kelebihan dan

Akses List dan Group
Hal yang paling umum dari sistem proteksi adalah membuat akses tergantung pada identitas pengguna yang bersangkutan. Implementasi dari akses ini adalah dengan membuat daftar akses yang berisi keterangan setiap pengguna dan keterangan akses berkas dari pengguna yang bersangkutan. Daftar akses ini akan diperiksa setiap kali seorang pengguna meminta akses ke sebuah berkas. Jika pengguna tersebut memiliki akses yang diminta pada berkas tersebut, maka diperbolehkan untuk mengakses berkas tersebut. Proses ini juga berlaku untuk hal yang sebaliknya. Akses pengguna terhadap berkas akan ditolak, dan sistem operasi akan mengeluarkan peringatan Protection Violation.

Masalah baru yang timbul adalah panjang dari daftar akses yang harus dibuat. Seperti telah disebutkan, kita harus mendaftarkan semua pengguna dalam daftar akses tersebut hanya untuk akses pada satu berkas saja. Oleh karena itu, teknik ini mengakibatkan 2 konsekuensi yang tidak dapat dihindarkan:
1. Pembuatan daftar yang sangat panjang ini dapat menjadi pekerjaan yang sangat melelahkan sekaligus membosankan, terutama jika jumlah pengguna dalam sistem tidak dapat diketahui secara pasti.
2. Manajemen ruang harddisk yang lebih rumit, karena ukuran sebuah direktori dapat berubah-ubah, tidak memiliki ukuran yang tetap.

Kedua konsekuensi diatas melahirkan sebuah teknik daftar akses yang lebih singkat. Teknik inimengelompokkan pengguna berdasarkan tiga kategori:

1. Owner: User yang membuat berkas.
2. Group: Sekelompok pengguna yang memiliki akses yang sama terhadap sebuah berkas, atau men-share sebuah berkas.
3. Universe: Seluruh pengguna yang terdapat dalam sistem komputer.

Dengan adanya pengelompokkan pengguna seperti ini, maka kita hanya membutuhkan tiga field untukmelindungi sebuah berkas. Field ini diasosiasikan dengan 3 buah bit untuk setiap kategori. Dalam sistem UNIX dikenal bit rwx dengan bit r untuk mengontrol akses baca, bit w sebagai kontrol menulis dan bit x sebagai bit kontrol untuk pengeksekusian. Setiap field dipisahkan dengan field separator. Dibawah ini adalah contoh dari sistem proteksi dengan daftar akses pada sistem UNIX.

drwx rwx rwx 1 pbg staff 512 Apr16
22.25 bekas.txt
owner group universe group owner ukuran waktu Nama berkas

Pendekatan Sistem Proteksi yang Lain
Sistem proteksi yang lazim digunakan pada sistem komputer selain diatas adalah dengan menggunakan password (kata sandi) pada setiap berkas. Beberapa sistem operasi mengimplementasikan hal ini bukan hanya pada berkas, melainkan pada direktori. Dengan sistem ini, sebuah berkas tidak akan dapat diakses selain oleh pengguna yang telah mengetahui password untuk berkas tersebut. Akan tetapi, masalah yang muncul dari sistem ini adalah jumlah password yang harus diingat oleh seorang pengguna untuk mengakses berkas dalam sebuah sistem operasi. Masalah yang lain adalah keamanan password itu sendiri. Jika hanya satu password yang digunakan, maka kebocoran password tersebut merupakan malapetaka bagi pengguna yang bersangkutan. Sekali lagi, maka kita harus menggunakan password yang berbeda untuk setiap tingkatan yang berbeda.

STRUKTUR SISTEM BERKAS

Disk menyediakan sebagian besar tempat penyimpanan dimana sistem berkas dikelola dikelola. Untuk meningkatkan efisiensi I/O, pengiriman data antara memori dan disk dilakukan dalam setiap blok. Setiap blok merupakan satu atau lebih sektor. Setiap disk memiliki ukuran yang berbeda-beda, biasanya berukuran 512 bytes. Disk memiliki dua karakteristik penting yang menjadikan disk sebagai media yang tepat untuk menyimpan berbagai macam berkas, yaitu:
• Disk tersebut dapat ditulis ulang di disk tersebut, hal ini memungkinkan untuk membaca, memodifikasi, dan menulis di disk tersebut.
• Dapat diakses langsung ke setiap blok di disk. Hal ini memudahkan untuk mengakses setiap berkas baik secara berurut mau pun tidak berurut, dan berpindah dari satu berkas ke berkas lain dengan hanya mengangkat head disk dan menunggu disk berputar.

Organisasi Sistem Berkas
Sistem operasi menyediakan sistem berkas agar data mudah disimpan, diletakkan dan diambil kembali dengan mudah. Terdapat dua masalah desain dalam membangun suatu sistem berkas. Masalah pertama adalah definisi dari sistem berkas. Hal ini mencakup definisi berkas dan atributnya, operasi ke berkas, dan struktur direktori dalam mengorganisasikan berkas-berkas. Masalah kedua adalah membuat algoritma dan struktur data yang memetakan struktur logikal sistem berkas ke tempat penyimpanan sekunder. Pada dasarnya sistem berkas tersusun atas beberapa tingkatan, yaitu (dari yang terendah):
• I/O control, terdiri atas driver device dan interrupt handler. Driver device adalah perantarakomunikasi antara sistem operasi dengan perangkat keras.
• Basic file system, diperlukan untuk mengeluarkan perintah generik ke device driver untuk baca dan tulis pada suatu blok dalam disk.
• File-organization module, informasi tentang alamat logika dan alamat fisik dari berkas tersebut. Modul ini juga mengatur sisa disk dengan melacak alamat yang belum dialokasikan dan menyediakan alamat tersebut saat user ingin menulis berkas ke dalam disk.
• Logical file system, tingkat ini berisi informasi tentang simbol nama berkas, struktur dari direktori, dan proteksi dan sekuriti dari berkas tersebut.

Mounting Sistem Berkas
Seperti halnya sebuah berkas yang harus dibuka terlebih dahulu sebelum digunakan, sistem berkas harus di mount terlebih dahulu sebelum sistem berkas tersebut siap untuk memproses dalam sistem. Sistem operasi diberikan sebuah alamat mounting (mount point) yang berisi nama device yang bersangkutan dan lokasi dari device tersebut.

Metode Alokasi Berkas
Kemudahan dalam mengakses langsung suatu disk memberikan fleksibilitas dalam mengimplementasikan sebuah berkas. Masalah utama dalam implementasi adalah bagaimana mengalokasikan berkas-berkas ke dalam disk, sehingga disk dapat terutilisasi dengan efektif dan berkas dapat diakses dengan cepat. Ada tiga metode utama, menurut buku “Applied Operating System Concepts: First Edition” oleh Avi Silberschatz, Peter Galvin dan Greg Gagne untuk mengalokasi ruang disk yang digunakan secara luas yaitu, contiguous, linked, dan indexed.

Alokasi Secara Berdampingan (Contiguous Allocation)
Metode ini menempatkan setiap berkas pada satu himpunan blok yang berurut di dalam disk. Alamat disk menyatakan sebuah urutan linier. Dengan urutan linier ini maka head disk hanya bergerak jika mengakses dari sektor terakhir suatu silinder ke sektor pertama silinder berikutnya. Waktu pencarian (seek time) dan banyak disk seek yang dibutuhkan untuk mengakses berkas yang di alokasi secara berdampingan ini sangat minimal. Contoh dari sistem operasi yang menggunakan contiguous allocation adalah IBM VM/ CMS karena pendekatan ini menghasilkan performa yang baik.

Contiguous allocation dari suatu berkas diketahui melalui alamat dan panjang disk (dalam unit blok) dari blok pertama. Jadi, misalkan ada berkas dengan panjang n blok dan mulai dari lokasi b maka berkas tersebut menempati blok b, b+1, b+2, …, b+n-1. Direktori untuk setiap berkas mengindikasikan alamat blok awal dan panjang area yang dialokasikan untuk berkas tersebut. Terdapat dua macam cara untuk mengakses berkas yang dialokasi dengan metode ini, yaitu:
• Sequential access, sistem berkas mengetahui alamat blok terakhir dari disk dan membaca blok berikutnya jika diperlukan.
• Direct access, untuk akses langsung ke blok i dari suatu berkas yang dimulai pada blok b, dapat langsung mengakses blok b+i.

Kesulitan dari metode alokasi secara berdampingan ini adalah menemukan ruang untuk berkas baru. Masalah pengalokasian ruang disk dengan metode ini merupakan aplikasi masalah dari dynamic storage-allocation (alokasi tempat penyimpanan secara dinamik), yaitu bagaimana memenuhi permintaan ukuran n dari daftar ruang kosong. Strategi-strategi yang umum adalah first fit dan best fit. Kedua strategi tersebut mengalami masalah fragmentasi eksternal, dimana jika berkas dialokasi dan dihapus maka ruang kosong disk terpecah menjadi kepingan-kepingan kecil. Hal ini akan menjadi masalah ketika banyak kepingan kecil tidak dapat memenuhi permintaan karena kepingan-kepingan kecil tidak cukup besar untuk menyimpan berkas, sehingga terdapat banyak ruang yang terbuang.

Masalah yang lain adalah menentukan berapa banyak ruang yang diperlukan untuk suatu berkas. Ketika berkas dibuat, jumlah dari ruang berkas harus ditentukan dan dialokasikan. Jika ruang yang dialokasikan terlalu kecil maka berkas tidak dapat diperbesar dari yang telah dialokasikan. Untuk mengatasi hal ini ada dua kemungkinan. Pertama, program pengguna dapat diakhiri dengan pesan error yang sesuai. Lalu, pengguna harus mengalokasikan tambahan ruang dan menjalankan programnya lagi, tetapi hal ini cost yang dihasilkan lebih mahal. Untuk mengatasinya, pengguna dapat melakukan estimasi yang lebih terhadap ruang yang harus dialokasikan pada suatu berkas tetapi hal ini akan membuang ruang disk. Kemungkinan yang kedua adalah mencari ruang kosong yang lebih besar, lalu menyalin isi dari berkas ke ruang yang baru dan mengkosongkan ruang yang sebelumnya. Hal ini menghabiskan waktu yang cukup banyak. Walau pun jumlah ruang yang diperlukan untuk suatu berkas dapat diketahui, pengalokasian awal akan tidak efisien. Ukuran berkas yang bertambah dalam periode yang lama harus dapat dialokasi ke ruang yang cukup untuk ukuran akhirnya, walau pun ruang tersebut tidak akan digunakan dalam waktu yang lama. Hal ini akan menyebabkan berkas dengan jumlah fragmentasi internal yang besar.

Untuk menghindari hal-hal tersebut, beberapa sistem operasi memodifikasi skema metode alokasi secara berdampingan, dimana kepingan kecil yang berurut dalam ruang disk diinisialisasi terlebih dahulu, kemudian ketika jumlah ruang disk kurang besar, kepingan kecil yang berurut lainnya, ditambahkan pada alokasi awal. Kejadian seperti ini disebut perpanjangan. Fragmentasi internal masih dapat terjadi jika perpanjangan-perpanjangan ini terlalu besar dan fragmentasi eksternal masih menjadi masalah begitu perpanjangan-perpanjangan dengan ukuran yang bervariasi dialokasikan dan didealokasi.

Alokasi Secara Berangkai (Linked Allocation)
Metode ini menyelesaikan semua masalah yang terdapat pada contiguous allocation. Dengan metode ini, setiap berkas merupakan linked list dari blok-blok disk, dimana blok-blok disk dapat tersebar di dalam disk. Setiap direktori berisi sebuah penunjuk (pointer) ke awal dan akhir blok sebuah berkas. Setiap blok mempunyai penunjuk ke blok berikutnya. Untuk membuat berkas baru, kita dengan mudah membuat masukan baru dalam direktori. Dengan metode ini, setiap direktori masukan mempunyai penunjuk ke awal blok disk dari berkas. Penunjuk ini diinisialisasi menjadi nil (nilai penunjuk untuk akhir dari list) untuk menandakan berkas kosong. Ukurannya juga diset menjadi 0. Penulisan suatu berkas menyebabkan ditemukannya blok yang kosong melalui sistem manajemen ruang kosong (free-space management system), dan blok baru ini ditulis dan disambungkan ke akhir berkas. Untuk membaca suatu berkas, cukup dengan membaca blok-blok dengan mengikuti pergerakan penunjuk.

Metode ini tidak mengalami fragmentasi eksternal dan kita dapat menggunakan blok kosong yang terdapat dalam daftar ruang kosong untuk memenuhi permintaan pengguna. Ukuran dari berkas tidak perlu ditentukan ketika berkas pertama kali dibuat, sehingga ukuran berkas dapat bertambah selama masih ada blok-blok kosong.

Metode ini tentunya mempunyai kerugian, yaitu metode ini hanya dapat digunakan secara efektif untuk pengaksesan berkas secara sequential (sequential-access file). Untuk mencari blok ke-i dari suatu berkas, harus dimulai dari awal berkas dan mengikuti penunjuk sampai berada di blok ke-i. Setiap akses ke penunjuk akan membaca disk dan kadang melakukan pencarian disk (disk seek). Hal ini sangat tidak efisien untuk mendukung kemampuan akses langsung (direct-access) terhadap berkas yang menggunakan metode alokasi link. Kerugian yang lain dari metode ini adalah ruang yang harus disediakan untuk penunjuk. Solusi yang umum untuk masalah ini adalah mengumpulkan blok-blok persekutuan terkecil dinamakan clusters dan mengalokasikan cluster-cluster daripada blok. Dengan solusi ini maka, penunjuk menggunakan ruang disk berkas dengan persentase yang sangat kecil. Metode ini membuat mapping logikal ke fisikal blok tetap sederhana, tetapi meningkatkan disk throughput dan memperkecil ruang yang diperlukan untuk alokasi blok dan management daftar kosong (free-list management). Akibat dari pendekatan ini adalah meningkatnya fragmentasi internal, karena lebih banyak ruang yang terbuang jika sebuah cluster sebagian penuh daripada ketika sebuah blok sebagian penuh. Alasan cluster digunakan oleh kebanyakan sistem operasi adalah kemampuannya yang dapat meningkatkan waktu akses disk untuk berbagai macam algoritma.

Masalah yang lain adalah masalah daya tahan metode ini. Karena semua berkas saling berhubungan dengan penunjuk yang tersebar di semua bagian disk, apa yang terjadi jika sebuah penunjuk rusak atau hilang. Hal ini menyebabkan berkas menyambung ke daftar ruang kosong atau ke berkas yang lain. Salah satu solusinya adalah menggunakan linked list ganda atau menyimpan nama berkas dan nomor relatif blok dalam setiap blok, tetapi solusi ini membutuhkan perhatian lebih untuk setiap berkas.

Variasi penting dari metode ini adalah penggunaan file allocation table (FAT), yang digunakan oleh sistem operasi MS-DOS dan OS/2. Bagian awal disk pada setiap partisi disingkirkan untuk menempatkan tabelnya. Tabel ini mempunyai satu masukkan untuk setiap blok disk, dan diberi indeks oleh nomor blok. Masukkan direktori mengandung nomor blok dari blok awal berkas. Masukkan tabel diberi indeks oleh nomor blok itu lalu mengandung nomor blok untuk blok berikutnya dari berkas. Rantai ini berlanjut sampai blok terakhir, yang mempunyai nilai akhir berkas yang khusus sebagai masukkan tabel. Blok yang tidak digunakan diberi nilai 0. Untuk mengalokasi blok baru untuk suatu berkas hanya dengan mencari nilai 0 pertama dalam tabel, dan mengganti nilai akhir berkas sebelumnya dengan alamat blok yang baru. Metode pengalokasian FAT ini dapat menghasilkan jumlah pencarian head disk yang signifikan, jika berkas tidak di cache. Head disk harus bergerak dari awal partisi untuk membaca FAT dan menemukan lokasi blok yang ditanyakan, lalu menemukan lokasi blok itu sendiri. Kasus buruknya, kedua pergerakan terjadi untuk setiap blok. Keuntungannya waktu random akses meningkat, akibat dari head disk dapat mencari lokasi blok apa saja dengan membaca informasi dalam FAT.

Alokasi Dengan Indeks (Indexed Allocation)
Metode alokasi dengan berangkai dapat menyelesaikan masalah fragmentasi eksternal dan pendeklarasian ukuran dari metode alokasi berdampingan. Bagaimana pun tanpa FAT, metode alokasi berangkai tidak mendukung keefisiensian akses langsung, karena penunjuk ke bloknya berserakan dengan bloknya didalam disk dan perlu didapatkan secara berurutan. Metode alokasi dengan indeks menyelesaikan masalah ini dengan mengumpulkan semua penunjuk menjadi dalam satu lokasi yang dinamakan blok indeks (index block). Setiap berkas mempunyai blok indeks, yang merupakan sebuah larik array dari alamat-alamat disk-blok. Direktori mempunyai alamat dari blok indeks. Ketika berkas dibuat, semua penunjuk dalam blok indeks di set menjadi nil. Ketika blok ke-i pertama kali ditulis, sebuah blok didapat dari pengatur ruang kosong free-space manager dan alamatnya diletakkan ke dalam blok indeks ke-i. Metode ini mendukung akses secara langsung, tanpa mengalami fragmentasi eksternal karena blok kosong mana pun dalam disk dapat memenuhi permintaan ruang tambahan. Tetapi metode ini dapat menyebabkan ada ruang yang terbuang. Penunjuk yang berlebihan dari blok indeks secara umum lebih besar dari yang terjadi pada metode alokasi berangkai. Mekanisme untuk menghadapi masalah berapa besar blok indeks yang diperlukan sebagai berikut:
• Linked scheme: untuk berkas-berkas yang besar, dilakukan dengan menyambung beberapa blok indeks menjadi satu.
• Multilevel index: sebuah varian dari representasi yang berantai adalah dengan menggunakan blok indeks level pertama menunjuk ke himpunan blok indeks level kedua, yang akhirnya menunjuk ke blok-blok berkas.
• Combined scheme: digunakan oleh sistem BSD UNIX yaitu dengan menetapkan 15 penunjuk dari blok indeks dalam blok indeksnya berkas. 12 penunjuk pertama menunjuk ke direct blocks yang menyimpan alamat-alamat blok yang berisi data dari berkas. 3 penunjuk berikutnya menunjuk ke indirect blocks. Penunjuk indirect blok yang pertama adalah alamat dari single indirect block, yang merupakan blok indeks yang berisi alamat-alamat blok yang berisi data. Lalu ada penunjuk double indirect block yang berisi alamat dari sebuah blok yang berisi alamat-alamat blok yang berisi penunjuk ke blok data yang sebenarnya

Kinerja Sistem Berkas
Salah satu kesulitan dalam membandingkan performa sistem adalah menentukan bagaimana sistem tersebut akan digunakan. Sistem yang lebih banyak menggunakan akses sekuensial (berurutan) akan memakai metode yang berbeda dengan sistem yang lebih sering menggunakan akses random (acak).Untuk jenis akses apa pun, alokasi yang berdampingan hanya memerlukan satu akses untuk mendapatkan sebuah blok disk. Karena kita dapat menyimpan initial address dari berkas di dalam memori, maka alamat disk pada blok ke-i dapat segera dikalkulasi dan dibaca secara langsung. Untuk alokasi berangkai (linked list), kita juga dapat menyimpan alamat dari blok selanjutnya ke dalam memori, lalu membacanya secara langsung. Metode ini sangat baik untuk akses sekuensial, namun untuk akses langsung, akses menuju blok ke-ikemungkinan membutuhkan pembacaan disk sebanyak i kali. Masalah ini mengindikasikan bahwa alokasi berangkai sebaiknya tidak digunakan untuk aplikasi yang membutuhkan akses langsung. Oleh sebab itu, beberapa sistem mendukung akses langsung dengan menggunakan alokasi berdampingan (contiguous allocation), serta akses berurutan dengan alokasi berangkai. Untuk sistem-sistem tersebut, jenis akses harus dideklarasikan pada saat berkas dibuat. Berkas yang dibuat untuk akses sekuensial (berurutan) akan dirangkaikan dan tidak dapat digunakan untuk akses langsung. Berkas yang dibuat untuk akses langsung akan berdampingan dan dapat mendukung baik akses langsung mau pun akses berurutan, dengan mendeklarasikan jarak maksimum. Perhatikan bahwa sistem operasi harus mendukung struktur data dan algoritma yang sesuai untuk mendukung kedua metode alokasi di atas.

Alokasi dengan menggunakan indeks lebih rumit lagi. Jika blok indeks telah terdapat dalam memori, akses dapat dilakukan secara langsung. Namun, menyimpan blok indeks dalam memori memerlukan ruang (space) yang besar. Jika ruang memori tidak tersedia, maka kita mungkin harus membaca blok indeks terlebih dahulu, baru kemudian blok data yang diinginkan. Untuk indeks dua tingkat, pembacaan dua blok indeks mungkin diperlukan. Untuk berkas yang berukuran sangat besar, mengakses blok di dekat akhir suatu berkas akan membutuhkan pembacaan seluruh blok indeks agar dapat mengikuti rantai penunjuk sebelum blok data dapat dibaca. Dengan demikian, performa alokasi dengan menggunakan indeks ditentukan oleh: struktur indeks, ukuran berkas, dan posisi dari blok yang diinginkan. Beberapa sistem mengkombinasikan alokasi berdampingan dengan alokasi indeks. Caranya adalah dengan menggunakan alokasi berdampingan untuk berkas berukuran kecil (3-4 blok), dan beralih secara otomatis ke alokasi indeks jika berkas semakin membesar.

MANAJEMEN RUANG KOSONG (FREE SPACE)

Semenjak hanya tersedia tempat yang terbatas pada disk maka sangat berguna untuk menggunakan kembali tempat dari berkas yang dihapus untuk berkas baru, jika dimungkinkan,karena pada media yang sekali tulis (media optik) hanya dimungkinkan sekali menulis dan menggunakannyanya kembali secara fisik tidak mungkin. Untuk mencatat tempat kosong pada disk, sistem mempunyai daftar tempat kosong (free space list). Daftar ini menyimpan semua blok disk yang kosong yang tidak dialokasikan pada sebuah berkas atau direktori. Untuk membuat berkas baru, sistem mencari ke daftar tersebut untuk mencarikan tempat kosong yang di butuhkan, lalu tempat tersebut dihilangkan dari daftar. Ketika berkas dihapus, alamat berkas tadi ditambahkan pada daftar.

Menggunakan Bit Vektor
Seringnya daftar raung kosong diimplementasikan sebagai bit map atau bit vektor. Tiap blok direpresentasikan sebagai 1 bit. Jika blok tersebut kosong maka isi bitnya 1 dan jika bloknya sedang dialokasikan maka isi bitnya 0. Sebagai contoh sebuah disk dimana blok 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 17, 18, 25, 26 dan 27 adalah kosong, dan sisanya dialokasikan. Bit mapnya akan seperti berikut:

001111001111110001100000011100000…

Keuntungan utama dari pendekatan ini adalah relatif sederhana dan efisien untuk mencari blok pertama yang kosong atau berturut-turut n blok yang kosong pada disk. Banyak komputer yang menyediakan instruksi manipulasi bit yang dapat digunakan secara efektif untuk tujuan ini. Sebagai contohnya, dari keluarga prosesor Intel dimulai dari 80386 dan keluarga Motorola dimulai dari 68020 (prosesor yang ada di PC dan Macintosh) mempunyai instruksi yang mengembalikan jarak di word dari bit pertama dengan nilai 1. Sistem operasi Apple Macintosh menggunakan metode bit vektor untuk mengalokasikan tempat pada disk. Dalam hal ini perangkat keras mendukung perangkat lunak tetapi bit vektor tidak efisien kecuali seluruh vektor disimpan dalam memori utama (dan ditulis di disk untuk kebutuhan pemulihan). Menyimpan dalam memori utama dimungkinkan untuk disk yang kecil pada mikro komputer, tetapi tidak untuk disk yang besar. Sebuah disk 1,3 GB dengan 512-byte blok akan membutuhkan bit map sebesar 332K untuk mencatat blok yang kosong.

Linked List
Pendekatan lain adalah untuk menghubungkan semua blok yang kosong, menyimpan pointer ke blok pertama yang kosong di tempat yang khusus pada disk dan menyimpannya di memori. Blok pertama ini menyimpan pointer ke blok kosong berikutnya dan seterusnya. Pada contoh sebelumnya kita akan menyimpan pointer ke blok ke 2 sebagai blok kosong pertama, blok 2 akan menyimpan pointer ke blok 3, yang akan menunjuk ke blok 4 dan seterusnya. Bagaimana pun metode ini tidak efisien karena untuk traverse daftar tesebut kita perlu membaca tiap blok yang membutuhkan waktu I/O. Untungnya traverse ini tidak sering digunakan. Umumnya, sistem operasi membutuhkan blok kosong untuk mengalokasikan blok tersebut ke berkas, maka blok pertama pada daftar ruang kosong digunakan.

Grouping
Modifikasi lainnya adalah dengan menyimpan alamat dari n blok kosong pada blok kosong pertama. Pada n-1 pertama dari blok-blok ini adalah kosong. Blok terakhir menyimpan alamat n blok kosong lainnya dan seterusnya. Keuntungannya dari implementasi seperti ini adalah alamat dari blok kosong yang besar sekali dapat ditemukan dengan cepat, tidak seperti pendekatan standar linked-list.

Counting
Pendekatan lain adalah dengan mengambil keuntungan dari fakta bahwa beberapa blok yang berkesinambungan akan dialokasikan atau dibebaskan secara simultan. Maka dari itu dari pada menyimpan daftar dari banyak alamat disk, kita dapat menyimpan alamat dari blok kosong pertama dan jumlah dari blok kosong yang berkesinambungan yang mengikuti blok kosong pertama. Tiap isi dari daftar menyimpan alamat disk dan penghitung (counter). Meski pun setiap isi membutuhkan tempat lebih tetapi secara keseluruhan daftar akan lebih pendek, selama count lebih dari satu.

IMPLEMENTASI DIREKTORI

Pemilihan dalam algoritma alokasi direktori dan manajemen direktori mempunyai efek yang besar dalam efisiensi, performa, dan kehandalan dari sistem berkas.

Linear List
Metode paling sederhana dalam mengimplementasikan sebuah direktori adalah dengan menggunakan linear list dari nama berkas dengan penunjuk ke blok data. Linear list dari direktori memerlukan pencarian searah untuk mencari suatu direktori didalamnya. Metode sederhana untuk di program tetapi memakan waktu lama ketika dieksekusi. Untuk membuat berkas baru kita harus mencari di dalam direktori untuk meyakinkan bahwa tidak ada berkas yang bernama sama. Lalu kita tambahkan sebuah berkas baru pada akhir direktori. Untuk menghapus sebuah berkas, kita mencari berkas tersebut dalam direktori, lalu melepaskan tempat yang dialokasikan untuknya. Untuk menggunakan kembali suatu berkas dalam direktori kita dapat melakukan beberapa hal. Kita dapat menandai berkas tersebut sebagai tidak terpakai (dengan menamainya secara khusus, seperti nama yang kosong, atau bit terpakai atau tidak yang ditambahkan pada berkas), atau kita dapat menambahkannya pada daftar direktori bebas. Alternatif lainnya kita dapat menyalin ke tempat yang dikosongkan pada direktori. Kita juga bisa menggunakan linked list untuk mengurangi waktu untuk menghapus berkas. Kelemahan dari linear list ini adalah percarian searah untuk mencari sebuah berkas. Direktori yang berisi informasi sering digunakan, implementasi yang lambat pada cara aksesnya akan menjadi perhatian pengguna. Faktanya, banyak sistem operasi mengimplementasikan ’software cache’ untuk menyimpan informasi yang paling sering digunakan. Penggunaan ’cache’ menghindari pembacaan informasi berulang-ulang pada disk. Daftar yang telah diurutkan memperbolehkan pencarian biner dan mengurangi waktu rata-rata pencarian.
Bagaimana pun juga penjagaan agar daftar tetap terurut dapat merumitkan operasi pembuatan dan penghapusan berkas, karena kita perlu memindahkan sejumlah direktori untuk mengurutkannya. Tree yang lebih lengkap dapat membantu seperti B-tree. Keuntungan dari daftar yang terurut adalah kita dapatkan daftar direktori yang terurut tanpa pengurutan yang terpisah.

Hash Table
Struktur data lainnya yang juga digunakan untuk direktori berkas adalah hash table. Dalam metode ini linear list menyimpan direktori, tetapi struktur data hash juga digunakan. Hash table mengambil nilai yang dihitung dari nama berkas dan mengembalikan sebuah penunjuk ke nama berkas yang ada di-linear list. Maka dari itu dapat memotong banyak biaya pencarian direktori. Memasukkan dan menghapus berkas juga lebih mudah dan cepat. Meski demikian beberapa aturan harus dibuat untuk mncegah tabrakan, situasi dimana dua nama berkas pada hash mempunyai tempat yang sama. Kesulitan utama dalam hash table adalah ukuran tetap dari hash table dan ketergantungan dari fungsi hash dengan ukuran hash table. Sebagai contoh, misalkan kita membuat suatu linear-probing hash table yang dapat menampung 64 data. Fungsi hash mengubah nama berkas menjadi nilai dari 0 sampai 63. Jika kita membuat berkas ke 65 maka ukuran tabel hash harus diperbesar sampai misalnya 128 dan kita membutuhkan suatu fungsi hash yang baru yang dapat memetakan nama berkas dari jangkauan 0 sampai 127, dan kita harus mengatur data direktori yang sudah ada agar memenuhi fungsi hash yang baru. Sebagai alternatif dapat digunakan chained-overflow hash table, setiap hash table mempunyai daftar yang terkait (linked list) dari pada nilai individual dan kita dapat mengatasi tabrakan dengan menambah tempat pada daftar terkait tersebut. Pencarian dapat menjadi lambat, karena pencarian nama memerlukan tahap pencarian pada daftar terkait. Tetapi operasi ini lebih cepat dari pada pencarian linear terhadap seluruh direktori.

.

Tinggalkan komentar

Filed under Kuliah

Hello world!

Welcome to WordPress.com! This is your very first post. Click the Edit link to modify or delete it, or start a new post. If you like, use this post to tell readers why you started this blog and what you plan to do with it.

Happy blogging!

1 Komentar

Filed under Uncategorized