Minggu, 26 Juni 2011

Menejemen Sistem Input Output Di Linux Debian

Manajemen Sistem M/K ( I/O)
Pekerjaan utama yang paling sering dilakukan oleh sistem komputer selain melakukan komputasi adalah Masukan/Keluaran (M/K). Dalam kenyataannya, waktu yang digunakan untuk komputasi lebih sedikit dibandingkan waktu untuk M/K. Ditambah lagi dengan banyaknya variasi perangkat M/K sehingga membuat manajemen M/K menjadi komponen yang penting bagi sebuah sistem operasi. Sistem operasi juga sering disebut device manager, karena sistem operasi mengatur berbagai macam perangkat ( device).
Fungsi-fungsi sistem operasi untuk sistem M/K:
• Penyanggaan ( buffering). Menampung data sementara dari/ke perangkat M/K
• Penjadwalan ( scheduling). Melakukan penjadualan pemakaian M/K sistem supaya lebih efisien.
• Spooling. Meletakkan suatu pekerjaan program pada penyangga, agar setiap perangkat dapat mengaksesnya saat perangkat tersebut siap.
• Menyediakan driver perangkat yang umum. Driver digunakan agar sistem operasi dapat memberi perintah untuk melakukan operasi pada perangkat keras M/K yang umum, seperti optical drive, media penyimpanan sekunder, dan layar monitor.
• Menyediakan driver perangkat yang khusus. Driver digunakan agar sistem operasi dapat memberi perintah untuk melakukan operasi pada perangkat keras M/K tertentu, seperti kartu suara, kartu grafis, dan motherboard
Manajemen Sistem I/O
Sering disebut device manager. Menyediakan device driveryang umum sehingga operasi I/O dapat seragam (membuka, membaca, menulis,menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas pada perangkat keras, CD-ROM dan floppy disk .
Manajemen sistem I/O merupakan aspek perancangan sistem operasi yang terluas disebabkan sangat beragamnya perangkat dan begitu banyaknya aplikasi dari perangkat- perangkat itu.
Sistem operasi bertanggung jawab dalam aktivitas yang berhubungan dengan manajemen sistem/perangkatI/O:
• Mengirim perintah ke perangkat I/O agar menyediakan layanan.
• Menangani interupsi perangakat I/O .
• Menangani kesalahan pada perangakat I/O.
• Menyediakan antarmuka ke pengguna.
Ada juga beberapa perangkat keras yang terdapat pada I/O manajemen yaitu :
1. Pooling
• Busy-waiting/ polling adalah ketika host mengalami looping yaitu membaca status register secara terus-menerus sampai status busy di-clear.
• Pada dasarnya polling dapat dikatakan efisien. Akan tetapi polling menjadi tidak efisien ketika setelah berulang-ulang melakukan looping, hanya menemukan sedikit device yang siap untuk men-service, karena CPU processing yang tersisa belum selesai.
2. Interupsi
Mekanisme Dasar Interupsi :
• Ketika CPU mendeteksi bahwa sebuah controller telah mengirimkan sebuah sinyal ke interrupt
request line (membangkitkan sebuah interupsi), CPU kemudian menjawab interupsi tersebut (juga disebut menangkap interupsi) dengan menyimpan beberapa informasi mengenai state terkini CPU–contohnya nilai instruksi pointer, dan memanggil interrupt handler agar handler tersebut dapat melayani controller atau alat yang mengirim interupsi tersebut.
• Fitur Tambahan pada Komputer Modern :
• Pada arsitektur komputer modern, tiga fitur disediakan oleh CPU dan interrupt controller (pada perangkat keras) untuk dapat menangani interrupsi dengan lebih bagus. Fitur-fitur ini antara lain adalah kemampuan menghambat sebuah proses interrupt handling selama prosesi berada dalam critical state, efisiensi penanganan interupsi sehingga tidak perlu dilakukan polling untuk mencari device yang mengirimkan interupsi, dan fitur yang ketiga adalah adanya sebuah konsep multilevel interupsi sedemikian rupa sehingga terdapat prioritas dalam penanganan interupsi (diimplementasikan dengan interrupt priority level system).
Penyebab Interupsi
• Interupsi dapat disebabkan berbagai hal, antara lain exception, page fault, interupsi yang dikirimkan oleh device controllers, dan system call Exception adalah suatu kondisi dimana terjadi sesuatu/ dari sebuah operasi didapat hasil tertentu yang dianggap khusus sehingga harus mendapat perhatian lebih, contoh nya pembagian dengan 0 (nol), pengaksesan alamat memori yang restricted atau bahkan tidak valid, dan lain-lain.
• System call adalah sebuah fungsi pada aplikasi (perangkat lunak) yang dapat mengeksekusikan instruksi khusus berupa software interrupt atau trap.
3. DMA
• DMA adalah sebuah prosesor khusus (special purpose processor) yang berguna untuk menghindari pembebanan CPU utama oleh program I/O (PIO).
4. Handshaking

Penjadwalan Proses Linux Debian

Ketika kernel telah mencapai titik penjadwalan ulang, entah karena terjadi interupsi penjadwalan ulang maupun karena proses kernel yang sedang berjalan telah diblokir untuk menunggu beberapa signal bangun, harus memutuskanproses selanjutnya yang akan dijalankan. Linux telah memiliki dua algoritma penjadwalan proses yang terpisah satu sama lain. Algoritma yang pertama adalah algoritma time-sharing untuk penjadwalan preemptive yang adil diantara sekian banyak proses. Sedangkan algoritma yang kedua didesain untuk tugas real-time dimana proritas mutlak lebih utama daripada keadilan mendapatkan suatu pelayanan.

Bagian dari tiap identitas proses adalah kelas penjadwalan, yang akan menentukan algoritma yang digunakan untuk tiap proses. Kelas penjadwalan yang digunakan oleh Linux, terdapat dalam standar perluasan POSIX untuk sistem komputer waktu nyata.

Untuk proses time-sharing, Linux menggunakan teknik prioritas, sebuah algoritma yang berdasarkan pada kupon. Tiap proses memiliki sejumlah kupon penjadwalan; dimana ketika ada kesempatan untuk menjalankan sebuah tugas, maka proses dengan kupon terbanyaklah yang mendapat giliran. Setiap kali terjadi interupsi waktu, proses yang sedang berjalan akan kehilangan satu kupon; dan ketika kupon yang dimiliki sudah habis maka proses itu akan ditunda dan proses yang lain akan diberikan kesempatan untuk masuk.

Jika proses yang sedang berjalan tidak meiliki kupon sama sekali, linux akan melakukan operasi pemberian kupon, memberikan kupon kepada tiap proses dalam sistem, dengan aturan main: kupon = kupon / 2 + prioritas Algoritma ini cenderung untuk menggabungkan dua faktor yang ada: sejarah proses dan prioritas dari proses itu sendiri. Satu setengah dari kupon yang dimiliki sejak operasi pembagian kupon terakhir akan tetap dijaga setelah algoritma
telah dijalankan, menjaga beberapa sejarah sikap proses. Proses yang berjalan sepanjang waktu akan cenderung untukmenghabiskan kupon yang dimilikinya dengan cepat, tapi proses yang lebih banyak menunggu dapat mengakumulasi kuponnya dari. Sistem pembagian kupon ini, akan secara otomatis memberikan proritas yang tinggi ke proses I/O bound ataupun interaktif, dimana respon yang cepat sangat diperlukan.

Kegunaan dari proses pemberian prioritas dalam menghitung kupon baru, membuat prioritas dari suatu proses dapat ditingkatkan. Pekerjaan background batch dapat diberikan prioritas yang rendah; proses tersebut akan secara otomatis menerima kupon yang lebih sedikit dibandingkan dengan pekerjaan yang interaktif, dan juga akan menerima persentase waktu CPU yang lebih sedikit dibandingan dengan tugas yang sama dengan prioritas yang lebih tinggi. Linux menggunakan sistem prioritas ini untuk menerapkan mekanisme standar pembagian prioritas proses yang lebih baik.

Penjadwalan waktu nyata Linux masih tetap lebih sederhana. Linux, menerapkan dua kelas penjadwalan waktu nyata yang dibutuhkan oleh POSIX 1.b: First In First Out dan round-robin. Pada keduanya, tiap proses memiliki prioritas sebagai tambahan kelas penjadwalannya. Dalam penjadwalan time-sharing , bagaimanapun juga proses dengan prioritas yang berbeda dapat bersaing dengan beberapa pelebaran; dalam penjadwalan waktu nyata, si pembuat jadwal selalu menjalankan proses dengan prioritas yang tinggi. Diantara proses dengan prioritas yang sama, maka proses yang sudah menunggu lama, akan dijalankan. Perbedaan satu - satunya antara penjadwalan FIFO dan round-robin adalah proses FIFO akan melanjutkan prosesnya sampai keluar ataupun diblokir, sedangkan proses round-robin akan dipreemptivekan setelah beberapa saat dan akan dipindahkan ke akhir antrian, jadi proses round-robin dengan prioritas yang sama akan secara otomatis membagi waktu jalan antar mereka sendiri.

Perlu diingat bahwa penjadwalan waktu nyata di Linux memiliki sifat yang lunak. Pembuat jadwal Linux menawarkan jaminan yang tegas mengenai prioritas relatif dari proses waktu nyata, tapi kernel tidak menjamin seberapa cepat penjadwalan proses waktu-nyata akan dijalankan pada saat proses siap dijalankan. Ingat bahwa kode kernel Linux tidak akan pernah bisa dipreemptive oleh kode mode pengguna. Apabila terjadi interupsi yang membangunkan proses waktu nyata, sementara kernel siap untuk mengeksekusi sebuah sistem call sebagai bagian proses lain, proses waktu nyata harus menunggu sampai sistem call yang sedang dijalankan selesai atau diblokir.

Manajemen Proses di Linux Debian

Setiap kali instruksi diberikan pada Shell Linux, kernel akan menciptakan proses-id. Proses ini disebut juga dalam terminologi UNIX sebagai JOB. Proses-id (PID) dimulai dari 0, yaitu proses INIT, kemudian diikuti oleh proses berikutnya (dapat dilihat dalam daftar urutan pada /etc /inittab). Proses-proses sistem terbagi dalam tiga tipe utama, yaitu :
Interactive : Diprakarsai oleh sebuah shell dan berjalan dalam foreground dan
Background.
Batch : Secara tipical merupakan sebuah seri dari proses-proses yang
dijadwalkan untuk dieksekusi pada suatu waktu tertentu
Daemon : Secara tipikal diinisialisasi saat boot untuk membentuk fungsi-fungsi
sistem yang dibutuhkan, seperti LPD, NFS dan DNS
Proses Interaktive terdiri dari atas :
- Proses fireground adalah suatu proses yang ketika berjalan, shell tidak menampilkan prompt hingga proses berakhir.
- Proses background adalah suatu proses yang sewaktu-waktu berjalan, pemakai tetap dapat memberikan perintah yang lain. Sebab begitu perintah background diberikan (setelah di tekan ENTER), prompt akan ditampilkan kembali dan shell siap menerika perintah berikutnya.
7.1 Background Proses
Untuk menghasilkan sebuah background proses, dapat dilakukan dengan menjalankan perintah yang diakhiri dengan simbol &. Pada kondisi seperti ini, sehll tidak akan menunggu sampai eksekusi perintah berakhir. Begitu perintah berakhiran & diberikan, shell siap menerima perintah lain. Kegunaan perintah ini misalnya untuk memperoleh daftar seluruh file dari direktori root (/) beserta anak-anaknya dan menempatkannya ke sebuah file. Karena proses ini Kemungkinan memakan waktu yang cukup lama, pemakai dapat mengatur agar eksekusinya dilakukan dilatar belakang. Sehingga sementara sistem sedang memprosesnya, pemakai tetap dapat bekerja memberikan perintah-perintah lainnya.
Contoh :
$ls –lR / > lsroot 2>&1 &
Pada contoh tersebut, perintah ls beserta pesan kesalahan ditempatkan ke file lsroot dan dilakukan secara background. Proses latar belakang cocok untuk proses yang tidak menggunakan keluaran ke layar terminal atau masukkan dari keyboard.
7.2 Status Proses
Instruksi ps (proses status) digunakan untuk melihat kondisi proses yang ada. Ketika tidak ada option sama sekali, ps akan menampilkan proses yang saat itu dilakukan oleh sebuah terminal (tty?).
$ ps PID TT STAT TIME COMMAND 29384 p0 Is 0:00.01 -ksh (ksh) 27221 p0 R+ 0:00.00 ps
Proses ksh adalah proses shell yang aktif pada saat user login ke dalam sistem dan proses ksh ini akan menunggu instruksi dari pemakai. Bila shell menjalankan instruksi, maka shell menciptakan proses anak dan menunggu hingga proses tersebut selesai.
$ ps -u USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND dsn970210 29384 0.0 0.1 404 328 p0 Ss 7:35PM 0:00.01 -ksh (ksh) dsn970210 21658 0.0 0.1 284 164 p0 R+ 7:42PM 0:00.00 ps -u
Sebuah sistem yang dibangun oleh serangkain proses, dengan perintah ps –e (everthing) dapat ditampilkan sejumlah proses-proses tersebut.
$ ps -e
PID TTY TIME COMMAND
1 ? 00:00:05 init
2 ? 00:00:00 klogd
3 ? 00:00:00 inetd
—cut——
Semakin banyak pemakai yang sedang menggunakan sistem, semakin banyak proses yang akan ditampilkan. Tanda tanya (?) menyatakan bahwa proses tersebut adalah proses daemon (proses yang hidup terus selama sistem hidup dan berjalan dilatar belakang).
Sejumlah proses yang ditampilkan melalui ps –e berkedudukan sebagai pemimpin group proses (proses group leader), yaitu proses yang menjalankan proses yang lain. Sebagai contoh jika dijanlankan perintah ps –f (full listing), dengan hasil sebagai berikut :
$ps –f
UID PID PPID C STIME TTY TIME CMD
dsn970210 8907 1094 0 12:44 tty02 00:00:00 -bash
dsn970210 9205 8907 0 13:02 tty02 00:00:00 ps -f
Proses sh sebenarnya memimpin group proses. Tampak bahwa PID dari bash tercantum dalam PPID dari proses ps –f. PPID (parrent PID) menyatakan proses induk dari proses yang sedang berjalan, dan STIME menyatakan awal proses dimulai.
Contoh lain perintah ps :
ps –u anjik : untuk menampilkan proses yang terkait dengan seorang pemakai
ps –t tty02 : untuk menampilkan proses yang terkait dengan terminal
ps –auxww : untuk menampilkan informasi detail tentang setiap proses yang berjalan dalam komputer.
a : Mendaftar semua proses
u : menampilkan informasi dalam “user-oriented style”
x : memasukkan informasi dalam proses yang tidak
menampilkan kontrol ttys.
ww : memasukkan baris perintah dengan komplit, bahkan jika
mereka menjalankan sampai 132 kolom.
Field-field dalam output ps diantaranya :
USER : username dari proses. (Jika proses memiliki UID yang tidak sesuai dengan /etc/passwd, perlu berhati-hati karena dimungkinkan terjadi proses penyerangan.
PID : Proses Identification Number
%CPU : Prosentasi CPU yang digunakan
%MEM : Prosentasi MEMORY yang digunakan
SZ : Jumlah virtual memori yang digunakan proses
RSS : Resident set size, jumlah proses physical memory yang ditempati proses
TT : Terminal yang mengontrol proses
STAT : Field yang menunjukkan status proses
TIME : CPU time yang sedang digunakan
COMMAND : Nama perintah
Pada field STAT yang merupakan status proses dapat digunakan sebagai indikator terhadap suatu proses, sejumlah status tersebut dapat diketaui dari huruf pertama field STAT adalah :
R : actually running or runnable
S : Sleeping (sleeping > 20 seconds)
I : Idle (sleeping < 20 seconds)T : stopH : HaltedP : In page waitD : In disk waitZ : Zombie : In core
W : Swapped out
> : Proses yang telah melampaui soft limit ketetapan memori
Pada huruf ketiga field STAT menunjukkan keterangan apakah proses berjalan dengan altered CPU Schedule, antara lain :
N : Proses berjalan pada prioritas rendah
# : nice (nomor yang lebih tinggi dari 0)
< : Proses berjalan pada prioritas tinggiBeberapa pilihan perintah ps, sebagai berikut :-a : Menampilkan semua proses (termasuk milik user)-c : Menampilkan nama perintah dari environment task_struct-e : Menampilkan environment setelah baris perintah dan “and”-f : Menampilkan “forest” fromat pohon (proses dan subproses)-h : Tidak ada header-j : Jobs format-l : Long format-m : Menampilkan info memori-n : Output memori untuk USER dan WCHAN-r : Hanya proses-proses yang berjalan-s : Format signal-S : Menambah child CPU time dan page fault-t xx : Proses-proses yang hanya diasoasikan dengan ttyxx-u : Format user, memberikan nama user dan waktu mulai-v : format vm (virtual memory)-w : Wide output-x : Menampilakn proses-proses tanpa mengontrol terminal7.3 Menghentikan Proses (Kill)Kadang ada keinginan untuk membunuh atau menghentikan sebuah proses. Suatu alasan yang umum untuk menghentikan proses diantaranya :- Proses terlalu banyak menghabiskan CPU time- Proses berjalan terlalu lama tanpa menghasilkan output yang diharapkan.- Proses memproduksi terlalu banyak output pada layar atau ke sebuah file.- Proses mengunci terminal atau beberapa sesi lain.- Proses menggunakan file-file yang salah baik input maupun output, disebabkan kesalahan operator atau programming yang error.- Proses sudah tidak diperlukan lagi.Sebenarnya untuk menghentikan proses yang tidak berada pada background, cukup dengan menekan . Namun jika proses tersebut bekerja pada background, proses dapat dihentikan dengan perintah kill. Perintah kill bekerja dengan cara mengirim signal ke proses yang sedang berjalan melalui nomer proses yang sudah diketahui. Kill hanya dapat digunakan untuk menghentikan proses dari masing-masing user, hanya superuser saja yang berwenang untuk menghentikan proses user lain.
Format penulisan perintah kill sebagai berikut :
kill [-s signal_name] pid [...]
kill -l [exit_status]
kill -signal_name pid [...]
kill -signal_number pid [...]
Beberpa signal tersebut diantaranya:
1 HUP (hang up)
2 INT (interrupt)
3 QUIT (quit)
6 ABRT (abort)
9 KILL (non-catchable, non-ignorable kill)
14 ALRM (alarm clock)
15 TERM (software termination signal)
Contoh :
$ kill 123
Menghentikan proses dengan PID 123
$ kill -9 1234
Menghentikan dengan paksa proses dengan PID 1234.
# kill -HUP `cat /var/run/inetd.pid`
Mengirimkan hang up signal kepada daemon ined dengan PID seperti yang terseimpan pada /var/run/inetd.pid, dan meminta proses untuk membaca ulang susunan konfigurasi /etc/inetd.conf.
# kill 0
Menghentikan semua proses yang berjalan dalam background.
Jobs control adalah fasilitas yang memungkinkan suatu program dihentikan secara sementara dan kemudian dijalankan kembali. Fasilitas ini dapat dipakai untuk memindahkan program yang sedang berjalan secara background (dilatar belakang) ke foreground (di latar depan) atau sebaliknya. Fasilitas ini meniru fasilitas pada C shell.
Jika seseorang memberikan perintah (script shell, utilitas atau program), perintah tersebut akan menjadi sebuah job, terlepas perrintah itu dijalankan dilatar depan atau belakang.
Jobs control biasanya diaktifkan secara otomatis begitu berada di prompt (shell). Untuk mengetahui fasilitas ini sudah dijalankan atau belum, dapat deketahui dengan perintah :
$ set –o | grep monitor
monitor on
Jika perintah di atas menghasilkan informasi berupa “monitor on” berarti fasilitas job control sudah diaktifkan. Apabila fasilitas tesebut belum aktif, dapat diaktifkan dengan perintah :
$ set -o monitor
$ set -m
Untuk menjalankan perintah di background, perlu akhiran & disetiap perintah yang akan dijalankan.
$find / -name *.c –print > c.out 2> c.error &
Perintah diatas dipakai untuk memperoleh semua file berakhiran *.c dari root (/) danhasilnya ditempatkan ke file c.out. Adapun kalau ada sesuatu kesalahan (misalnya karena tidak diperkanankan membaca direktori tertentu berhubungan dengan ijin akses) kesalahan tersebut direkam ke file c.error. Proses ini dilakukan dibelakang layar, dan diberi nomor job dan identitas proses (PID).
Apabila nomor job adalah satu dan jobs belum berakhir, maka jika diberikan job kedua, maka nomor job tersebut sama dengan 2.
$ du / > du.out 2>1 &
[2] 272
Perintah du digunakan untuk memperoleh blok dari setiap file atau direktori. Setelah nomor job kedua diatas, jika dijalankan satu job lagi, maka :
$ sleep 500 & #tidak melakukan apa-apa selama 500 detik
[3] 273
Untuk melihat status proses dari perintah yang dieksekusi dilatar belakang, dapat digunakan perintah jobs.
$ jobs
[1] Stopped vi file1.txt &
[2] – Running ps –aux &
[3] + Running sleep 500 &
Informasi dibagian kiri menyatakan nomor job. Tanda + sesudah nomor job menyatakan job yang terbaru. Tanda – menyatakan job kedua yang terbaru. Informasi seperti running menyatakan bahwa perintah job sedang dieksekusi (belum selesai). Kemungkinan lain informasi adalah :
Stopped : job sedang berhenti secara sementara (ditangguhkan)
Done : job sudah selesai dikerjakan.
Bagian terkanan menyatakan nama perintah. Pemakai dapat memberikan pilihan –p pada perintah jobs. Pilihan ini akan menyebabkan jobs menampilkan PID dari semua proses yang dieksekusi dilatar belakang.
$ jobs –p
300
302
Artinya ada dua proses di latar belakang dengan PID 300 dan 302. Pilihan (option) –l akan menampilkan informasi seperti jobs tanpa option dan informasi PID (nomor proses)
$ jobs –l
[2] + 300 Running sleep 300 &
[1] – 302 Running sleep 150 &
Job yang berjalan dilatar depan dapat dihentikan dengan menekan tombol . Sebagai contoh, saat menjalankan perintah sleep 500 di latar depan, kemudian menekan tombol , maka proses tersebut akan dihentikan sementara.
$ sleep 500
[1] + Stopped sleep 500
Dengan menggunakan perintah jobs, status proses tersebut diatas dapat diketahui, sebagai berikut :
$ jobs
[1] + Stopped sleep 500
Job yang sedang ditangguhkan dapat diaktifkan kembali dengan cara diaktifkan dilatar belakang dan diaktifkan dilatar depan. Job yang sedang berhenti secara sementara dapat dijalankan kembali dilatar depan dengan cara menjalankan perintah fg. Dengan menjalankan perintah fg maka sleep 500 akan dijalankan di foreground, dan jika setelah di depan ingin ditangguhkan kembali tinggal menjalankan perintah bg.
$ sleep 500

[1] + Stopped sleep 500
$ bg #Eksekusi kelatar belakang
[1] sleep 500
Pada bentuk fg dan bg tanpa argumen, job terbarulah yang diproses. Sedangkan jika %n digunakan, job dengan nomor n yang diproses.
$ jobs
[2] + Running sleep 1000 &
[1] – Running sleep 200 &
$ fg %1
sleep 200 &
Proses yang sedang ditangguhkan ataupun yang sedang berada di latar belakang dapat dimatikan dengan menggunakan perintah kill.
$ kill %1 # job nomor 1 dihapus
[1] – Terminated sleep 200 &
Jika dikehendaki, pemakai dapat menyuruh shell menunggu suatu proses dilatar belakang selesai dieksekusi. Perintah yang diperlukan adalah wait. Perintahnya adalah wait %n, dengan n adalah nomor job dari proses latar belakang yang ditunggu.

Menejemen File di Linux Debian

1.Pengertian Dasar


File system atau manajemen file adalah metode dan struktur data yang digunakan sistem operasi untuk mengatur dan mengorganisir file pada disk atau partisi. File system juga dapat diartikan sebagai partisi atau disk yang digunakan untuk menyimpan file-file dalam cara tertentu. Cara memberi suatu file system ke dalam disk atau partisi dengan cara melakukan Format.
File system Linux kebanyakan menggunakan ext2 (baca: second extended) atau ext3, file system yang tidak mengalami fragmentasi seperti halnya file system windows (FAT/FAT32). Ext2 juga memiliki system security yang baik dengan menerapkan access permission untuk owner, group owner, dan other.


2.Atribut File


Setiap sistem dalam manajemen file mempunyai sistem atribusi yang berbeda- beda, namun pada dasarnya di linux mempunyai atribut seperti berikut ini:

• Nama: Nama berkas simbolik ini adalah informasi satu-satunya yang disimpan dalam format yang dapat dibaca oleh pengguna.

• Indentifiers: Tanda unik ini yang biasanya merupakan sebuah angka, mengenali berkas didalam sebuah berkas; tidak dapat dibaca oleh peng- guna.

• Tipe: Informasi ini diperlukan untuk sistem-sistem yang mendukung tipe berbeda (misal: .tar.gz pada kompresi, .tex pada dokumen latex).

• Lokasi: Informasi ini adalah sebuah penunjuk pada sebuah device terse- but(misal: harddisk, UFD(usb flashdisk), floppy, DVD rom dll).

• Ukuran: Ukuran dari sebuah berkas (dalam bytes, words, atau, blocks)
dan mungkin ukuran maksimum dalam atribut juga.


• Permission : Informasi yang menentukan siapa yang dapat melakukan read, write, execute, dan lainnya.

• Waktu dan identifikasi pengguna : informasi ini dapat disimpan un- tuk pembuatan berkas, modifikasi terakhir, dan penggunaan terakhir. Data-data ini dapat berguna untuk proteksi, keamanan, dan monitoring pengggunaan.

Inode adalah Informasi yang mengidentifikasikan suatu file secara unik. In- ode mengidentifikasikan lokasi tempat file disimpan, dan karakteristik dari file tersebut. (owner, date, dsb); tetapi nama file tidak disimpan sebagai bagian dari inode. Informasi yang disimpan dalam inode antara lain :


Izin Akses File (File Permission)
Tidak seperti halnya sistem operasi DOS, setiap file Linux memiliki status izin akses (file permission). Maksudnya setiap file memiliki informasi untuk mengatur siapa yang berhak untuk membaca, menjalankan atau men- gubah file tersebut.
Linux merupakan sistem operasi multiuser dan umumnya digunakan se- bagai sistem operasi untuk jaringan. Oleh karena itu untuk menjaga privasi file, keamanan serta integritas sistem agar tidak terganggu, izin akses file di- gunakan untuk melindungi file/sistem dari orang lain yang tidak mempunyai hak.
Bayangkan tanpa adanya fasilitas ini maka mail anda akan dapat di baca oleh seluruh orang yang terhubung dalam jaringan yang sama. File-file anda tidak akan dapat dijamin keamanannya dari penghapusan dan pencurian oleh orang lain. Oleh karena itu penting bagi anda untuk memahami izin akses suatu file.
Perhatikan file di bawah ini :

darkstar:~$ ls –l filetes
-rw-r- -r- - l juli users 121 Dec 17 12:12 filetes


Notasi yang dicetak tebal-miring itulah yang menyatakan izin akses file.
- rw- r-- r-- 1 juli users
1 2 3 4


Gambar 2.1: Izin akses file

Perhatikan bahwa notasi di atas terdiri atas sepuluh digit yang dapat dikelompokkan sebagai berikut:
Notasi pertama menyatakan tipe dari file tersebut. Tanda dash (-) meny- atakan bahwa file tersebut adalah file biasa. Untuk direktori maka lokasi terse- but akan berisi karakter d, karakter l untuk link file, dan beberapa tipe lain yang tidak dibahas pada bab ini.
Notasi ke dua yang terdiri dari tiga karakter menunjukkan status file untuk pemilik (owner) dalam hal ini adalah juli. Adapun tiga karakter tersebut mengikuti aturan berikut:

• Karakter pertama untuk menentukan hak baca dari pemilik, karakter r berarti pemilik memiliki hak baca terhadap file tersebut sedangkan bila berisi karakter dash (-) berarti pemilik file tidak memiliki hak baca terhadap file tersebut.

• Karakter kedua untuk menunjukkan hak tulis terhadap file tersebut, dalam hal ini user tersebut memiliki hak untuk menulis atau mengubah file tersebut.

• Karakter ketiga untuk menentukan apakah file tersebut dapat dieksekusi oleh pemilik. Bila file tersebut dapat dieksekusi maka digit tersebut akan berisi karakter x.

Notasi ketiga juga terdiri atas tiga karakter, dimana tiga karakter ini menentukan izin akses file untuk seluruh user yang memiliki grup yang sama dengan user tersebut. Dalam hal ini grup dari pemilik file tersebut adalah users. Cara memahami tiga karakter izin grup ini pun sama dengan izin untuk pemilik file yang sudah dijelaskan sebelumnya. Dalam hal ini seluruh user yang termasuk dalam grup user hanya memiliki hak baca terhadap file tersebut.
Tiga karakter terakhir (notasi ketiga) digunakan untuk menentukan izin file untuk user lain yang tidak termasuk dalam grup tersebut (diistilahkan sebagai others). Dalam hal ini others hanya memiliki hak baca dan tidak hak tulis ataupun hak menjalankannya.
Secara umum file tersebut hanya dapat dibaca dan ditulis oleh pemilik yaitu juli, dan user lain yang berada satu grup (users) serta orang lain hanya dapat membaca file tersebut.

3.Operasi File


Fungsi dari berkas adalah untuk menyimpan data dan mengizinkan kita membacanya. Dalam proses ini ada beberapa operasi yang dapat dilakukan berkas. Ada pun operasi-operasi dasar yang dilakukan berkas, yaitu:

• Membuat Berkas (Create):
Kita perlu dua langkah untuk membuat suatu berkas. Pertama, kita harus temukan tempat didalam sistem berkas. Kedua, sebuah entri un- tuk berkas yang baru harus dibuat dalam direktori. Entri dalam direktori tersebut merekam nama dari berkas dan lokasinya dalam sistem berkas.

• Menulis sebuah berkas (Write) :
Untuk menulis sebuah berkas, kita membuat sebuah system call yang menyebutkan nama berkas dan informasi yang akan ditulis kedalam berkas.

• Membaca Sebuah berkas (Read):
Untuk membaca sebuah berkas menggunakan sebuah system call yang menyebut nama berkas yang dimana dalam blok memori berikutnya dari sebuah berkas harus diposisikan.

• Memposisikan Sebuah Berkas (Reposition):
Direktori dicari untuk entri yang sesuai dan current-file-position diberi sebuah nilai. Operasi ini di dalam berkas tidak perlu melibatkan M/K, selain itu juga diketahui sebagai file seek.

• Menghapus Berkas (Delete):
Untuk menghapus sebuah berkas kita mencari dalam direktori untuk nama berkas tersebut. Setelah ditemukan, kita melepaskan semua spasi berkas sehingga dapat digunakan kembali oleh berkas-berkas lainnya dan menghapus entry direktori.

• Menghapus Sebagian Isi Berkas (Truncate):
User mungkin mau menghapus isi dari sebuah berkas, namun menyim- pan atributnya. Daripada memaksa pengguna untuk menghapus berkas tersebut dan membuatnya kembali, fungsi ini tidak akan mengganti atribut, kecuali panjang berkas dan mendefinisikan ulang panjang berkas tersebut menjadi nol.

Keenam operasi diatas merupakan operasi-operasi dasar dari sebuah berkas yang nantinya dapat dikombinasikan untuk membentuk operasi- operasi baru


lainnya. Contohnya, apabila kita ingin menyalin sebuah berkas, maka kita memakai operasi create untuk membuat berkas baru, read untuk membaca berkas yang lama, dan write untuk menulisnya pada berkas yang baru.


4.Struktur Direktori


Beberapa sistem komputer menyimpan banyak sekali berkas-berkas dalam disk, sehingga diperlukan suatu struktur pengorganisasian data agar lebih mu- dah diatur.
Direktori atau folder merupakan suatu entitas dalam sebuah berkas sistem yang mengandung berkas atau mengandung direktori lain. Sebenarnya, pada hakikatnya berkas atau berkas terdapat dalam disk, direktori hanya menyedi- akan link atau menunjuk pada berkas yang ada.
Dengan demikian, dapat disimpulkan bahwa direktori digunakan sebagai sarana untuk pengorganisasian berkas pada suatu sistem komputer. Dengan direktori, berkas-berkas dapat dikelompokkan. Berkas tersebut dapat berisi berkas ataupun direktori lain, sehingga direktori dapat juga disebut sebagai
berkas istimewa.
















Gambar 2.2: File Organization


Pada atribut, perbedaan pada direktori dan atribut pada berkas yaitu di- rektori tidak mempunyai tipe, sedangkan berkas mempunyai banyak tipe.


Direktori pada Unix

Struktur direktori yang digunakan dalam Unix adalah struktur direktori tradisional. Seperti yang terdapat dalam gambar direktori entri dalam Unix, setiap entri berisi nama berkas dan nomor inode yang bersangkutan. Semua informasi dari jenis, kapasitas, waktu dan kepemilikan, serta block disk yang berisi inode. Sistem Unix terkadang mempunyai penampakan yang berbe- da,tetapi pada beberapa kasus, direktori entri biasanya hanya string ASCII dan nomor inode.

Gambar 2.3: Direktori Unix
Saat berkas dibuka, sistem berkas harus mengambil nama berkas dan men- galokasikan block disk yang bersangkutan, sebagai contoh, nama path /usr/ast/ mbox dicari, dan kita menggunakan Unix sebagai contoh, tetapi algoritma yang digunakan secara dasar sama dengan semua hirarki sistem direktori sis- tem.
Pertama, sistem berkas mengalokasikan direktori root. Dalam Unix inode yang bersangkutan ditempatkan dalam tempat yang sudah tertentu dalam disk. Kemudian, Unix melihat komponen pertama dari path, usr dalam direk- tori root menemukan nomor inode dari direktori /usr. Mengalokasikan sebuah nomor inode adalah secara straight-forward, sejak setiap inode mempunyai lokasi yang tetap dalam disk. Dari inode ini, sistem mengalokasikan direk- tori untuk /usr dan melihat komponen berikutnya, dst. Saat dia menemukan entri untuk ast, dia sudah mempunyai inode untuk direktori /ust/ast. Dari inode ini, dia dapat menemukan direktorinya dan melihat mbox. Inode un- tuk berkas ini kemudian dibaca ke dalam memori dan disimpan disana sampai berkas tersebut ditutup.
Nama path dilihat dengan cara yang relatif sama dengan yang absolut.


Dimulai dari direktori yang bekerja sebagai pengganti root directory. Seti- ap direktori mempunyai entri untuk. dan ”..” yang dimasukkan ke dalam saat direktori dibuat. Entri ”.” mempunyai nomor inode yang menunjuk ke direktori di atasnya/orangtua (parent ), ”.” kemudian melihat ../dick/prog.c hanya melihat tanda ”..” dalam direktori yang bekerja, dengan menemukan nomor inode dalam direktori di atasnya/parent dan mencari direktori disk. Tidak ada mekanisme spesial yang dibutukan untuk mengatasi masalah nama ini. Sejauh masih di dalam sistem direktori, mereka hanya merupakan ASCII string yang biasa. Dari nomor inode ini kita memperoleh inode yang meru- pakan suatu struktur data yang menyimpan informasi berkas. Penghapusan berkas dilakukan dengan cara melepas inode. Inode ini berisi informasi tentang
:
• tipe
• ukuran
• waktu
• owner
• blok-blok disk


Gambar 2.4: Bagaimana file di UNIX ditampilkan

5.Konsep Mounting
5.1Mounting
Mounting adalah proses mengkaitkan sebuah sistem berkas yang baru dite- mukan pada sebuah piranti ke struktur direktori utama yang sedang dipakai. Piranti-piranti yang akan di-mount dapat berupa cd-rom, disket atau sebuah zip-drive. Tiap-tiap sistem berkas yang akan di-mount akan diberikan sebuah mount point, atau sebuah direktori dalam pohon direktori sistem Anda, yang sedang diakses. Sistem berkas yang dideskripsikan di /etc/fstab(fstab adalah singkatan dari filesystem tables) biasanya akan di-mount saat komputer baru dimulai dinyalakan, tapi dapat juga me-mount sistem berkas tambahan dengan menggunakan perintah:
mount[nama_piranti]
Atau dapat juga dengan menambahkan secara manual mount point ke berkas /etc/fstab. Daftar sistem berkas yang di-mount dapat dilihat kapan saja dengan menggunakan perintah mount. Karena izinnya hanya diatur read- only di berkas fstab, maka tidak perlu khwatir pengguna lain kana menco- ba mengubah dan menulis mount point yang baru. Seperti biasa saat ingin mengutak-atik berkas konfigurasi seperti mengubah isi berkas fstab, pastikan untuk membuat berkas cadangan untuk mencegah terjadinya kesalahan teknis yang dapat menyebabkan suatu kekacauan. Kita dapat melakukannya dengan cara menyediakan sebuah disket atau recovery-disk dan mem-back-up berkas fstab tersebt sebelum membukanya di editor teks untuk diutak-atik. Pada linux, isi sebuah berkas dibuat nyata tersedia dengan mengabungkan sistem berkas ke dalam sebuah sistem direktori melalui sebuah proses yang disebut mounting.

5.2 Mounting Overview
Mounting membuat sistem berkas, direktori, piranti dan berkas lainnya menjadi dapat digunakan digunakan di lokasi-lokasi tertentu, sehingga memu- ngkinkan direktori itu menjadi dapat diakses. Perintah mount mengintruk- sikan sistem operasi untuk mengkaitkan sebuah sistem berkas ke sebuah direk- tori khusus.


5.3 Mounting point
Mount point adalah sebuah direktori dimana berkas baru menjadi da- pat diakses. Untuk me-mount suatu berkas atau direktori, titik mountnya harus berupa direktori,dan untuk me-mount sebuah berkas,mount pointnya juga harus berupa berkas.
Ada dua jenis mounting, yaitu remote mounting dan mounting lokal. Re- mote mounting dilakukan dengan sistem remote dimana data dikirimkan melalui jalur komunikasi. Network sistem berkas seperti Network File System (NFS), menharuskan agar file diekspor dulu sebelum dimount. Mounting lokal di- lakukan di sistem lokal.
Biasanya, sebuah sistem berkas, direktori, atau sebuah berkas di-mount ke sebuah mount point yang kosong, tapi biasanya hal tersebut tidak diperlukan. Jika sebuah berkas atau direktori yang akan menjadi mount point berisi da- ta, data tersebut tidak akan dapat diakses selama direktori/berkas tersebut sedang dijadikan mount point oleh berkas atau direktori lain. Sebagai ak- ibatnya, berkas yang di-mount akan menimpa apa yang sebelumnya ada di direktori/berkas tersebut. Data asli dari direktori itu dapat diakses kembali bila proses mounting sudah selesai.
Saat sebuah sistem berkas di-mount ke sebuah direktori, izin direktori root dari berkas yang di-mount akan mengambil alih izin dari mount point. Penge- cualiannya adalah pada direktori induk akan memiliki atribut .. (double dot). Agar sistem operasi dapat mengakses sistem berkas yang baru, direktori induk dari mount point harus tersedia.

Gambar 2.5: Mount Point


5.4 Mounting Sistem Berkas, Direktori, dan Berkas
Ada dua jenis mounting: remote mounting dan mounting lokal. Remote mounting dilakukan dengan sistem remote dimana data dikirimkan melalui jalur telekomunikasi. Remote sistem berkas seperti Network File Systems (NFS), mengharuskan agar file diekspor dulu sebelum di-mount. mounting lokal dilakukan di sistem lokal.
Tiap-tiap sistem berkas berhubungan dengan piranti yang berbeda. Se- belum kita menggunakan sebuah sistem berkas, sistem berkas tersebut harus dihubungkan dengan struktur direktori yang ada (dapat root atau berkas yang lain yang sudah tersambung). Sebagai contoh, kita dapat me-mount dari
/home/server/database ke mount point yang dispesifikasikan sebagai /home/user1,
/home/user2, and /home/user3 :

• /home/server/database /home/user1

• /home/server/database /home/user2

• /home/server/database /home/user3

Manajemen Memori di Linux Debian

Manajemen Memori Fisik
Bagian ini menjelaskan bagaimana linux menangani memori dalam sistem. Memori manajemen merupakan salah satu bagian terpenting dalam sistem operasi. Karena adanya keterbatasan memori, diperlukan suatu strategi dalam menangani masalah ini. Jalan keluarnya adalah dengan menggunakan memori virtual. Dengan memori virtual, memori tampak lebih besar daripada ukuran yang sebenarnya.
Dengan memori virtual kita dapat:
1. Ruang alamat yang besar
Sistem operasi membuat memori terlihat lebih besar daripada ukuran memori sebenarnya. Memori virtual bisa beberapa kali lebih besar daripada memori fisiknya.
2. Pembagian memori fisik yang dil
Manajemen memori membuat pembagian yang adil dalam pengalokasian memori antara proses-proses.
3. Perlindungan
Memori manajemen menjamin setiap proses dalam sistem terlindung dari proses-proses lainnya. Dengan demikian, program yang crash tidak akan mempengaruhi proses lain dalam sistem tersebut.
4. Penggunaan memori virtual bersama
Memori virtual mengijinkan dua buah proses berbagi memori diantara keduanya, contohnya dalam shared library. Kode library dapat berada di satu tempat, dan tidak dikopi pada dua program yang berbeda.
Memori Virtual
Memori fisik dan memori virtual dibagi menjadi bagian-bagian yang disebut page. Page ini memiliki ukuran yang sama besar. Tiap page ini punya nomor yang unik, yaitu Page Frame Number (PFN). Untuk setiap instruksi dalam program, CPU melakukan mapping dari alamat virtual ke memori fisik yang sebenarnya.
Penerjemahan alamat di antara virtual dan memori fisik dilakukan oleh CPU menggunakan tabel page untuk proses x dan proses y. Ini menunjukkan virtial PFN 0 dari proses x dimap ke memori fisik PFN 1. Setiap anggota tabel page mengandung informasi berikut ini:
1. Virtual PFN
2. PFN fisik
3. informasi akses page dari page tersebut
Untuk menerjemahkan alamat virtual ke alamat fisik, pertama-tama CPU harus menangani alamat virtual PFN dan offsetnya di virtual page. CPU mencari tabel page proses dan mancari anggota yang sesuai degan virtual PFN. Ini memberikan PFN fisik yang dicari. CPU kemudian mengambil PFN fisik dan mengalikannya dengan besar page untuk mendapat alamat basis page tersebut di dalam memori fisik. Terakhir, CPU menambahkan offset ke instruksi atau data yang dibutuhkan. Dengan cara ini, memori virtual dapat dimap ke page fisik dengan urutan yang teracak.
Demand Paging
Cara untuk menghemat memori fisik adalah dengan hanya meload page virtual yang sedang digunakan oleh program yang sedang dieksekusi. Tehnik dimana hanya meload page virtual ke memori hanya ketika program dijalankan disebut demand paging.
Ketika proses mencoba mengakses alamat virtual yang tidak ada di dalam memori, CPU tidak dapat menemukan anggota tabel page. Contohnya, dalam gambar, tidak ada anggota tabel page untuk proses x untuk virtual PFN 2 dan jika proses x ingin membaca alamat dari virtual PFN 2, CPU tidak dapat menterjemahkan alamat ke alamat fisik. Saat ini CPU bergantung pada sistem operasi untuk menangani masalah ini. CPU menginformasikan kepada sistem operasi bahwa page fault telah terjadi, dan sistem operasi membuat proses menunggu selama sistem operasi menagani masalah ini.
CPU harus membawa page yang benar ke memori dari image di disk. Akses disk membutuhkan waktu yang sangat lama dan proses harus menunggu sampai page selesai diambil. Jika ada proses lain yang dapat dijalankan, maka sistem operai akan memilihnya untuk kemudian dijalankan. page yang diambil kemudian dituliskan di dalam page fisik yang masih kosong dan anggota dari virtual PFN ditambahkan dalam tabel page proses. Proses kemudian dimulai lagi pada tempat dimana page fault terjadi. Saat ini terjadi pengaksesan memori virtual, CPU membuat penerjemahan dan kemudian proses dijalankan kembali.
Demand paging terjadi saat sistem sedang sibuk atau saat image pertama kali diload ke memori. Mekanisme ini berarti sebuah proses dapat mengeksekusi image dimana hanya sebagian dari image tersebut terdapat dalam memori fisik.
Swaping
Jika memori fisik tiba-tiba habis dan proses ingin memindahkan sebuah page ke memori, sistem operasi harus memutuskan apa yang harus dilakukan. Sistem operasi harus adil dalam mambagi page fisik dalam sistem diantara proses yang ada, bisa juga sistem operasi menghapus satu atau lebih page dari memori untuk membuat ruang untuk page baru yang dibawa ke memori. Cara page virtual dipilih dari memori fisik berpengaruh pada efisiensi sistem.
Linux menggunakan tehnik page aging agar adil dalam memilih page yang akan dihapus dari sistem. Ini berarti setiap page memiliki usia sesuai dengan berapa sering page itu diakses. Semakin sering sebuah page diakses, semakin muda page tersebut. Page yang tua adalah kandidat untuk diswap.
Pengaksesan memori virtual bersama
Memori virtual mempermudah proses untuk berbagi memori saat semua akses ke memori menggunakan tabel page. Proses yang akan berbagi memori virtual yang sama, page fisik yang sama direference oleh banyak proses. Tabel page untuk setiap proses mengandung anggota page table yang mempunyai PFN fisik yang sama.
Efisiensi
Desainer dari CPU dan sistem operasi berusaha meningkatkan kinerja dari sistem. Disamping membuat prosesor, memori semakin cepat, jalan terbaik adalah manggunakan cache. Berikut ini adalah beberapa cache dalam manajemen memori di linux:
1. Page Cache
Digunakan untuk meningkatkan akses ke image dan data dalam disk. Saat dibaca dari disk, page dicache di page cache. Jika page ini tidak dibutuhkan lagi pada suatu saat, tetapi dibutuhkan lagi pada saat yang lain, page ini dapat segera diambil dari page cache.
2. Buffer Cache
Page mungkin mengandung buffer data yang sedang digunakan oleh kernel, device driver dan lain-lain. Buffer cache tampak seperti daftar buffer. Contohnya, device driver membutuhkan buffer 256 bytes, adalah lebih cepat untuk mengambil buffer dari buffer cache daripada mengalokasikan page fisik lalu kemudian memecahnya menjadi 256 bytes buffer-buffer.
3. Swap Cache
Hanya page yang telah ditulis ditempatkan dalam swap file. Selama page ini tidak mengalami perubahan setelah ditulis ke dalam swap file, maka saat berikutnya page di swap out tidak perlu menuliskan kembali jika page telah ada di swap file. Di sistem yang sering mengalami swap, ini dapat menghemat akses disk yang tidak perlu.
Salah satu implementasi yang umum dari hardware cache adalah di CPU, cache dari anggota tabel page. Dalam hal ini, CPU tidak secara langsung membaca tabel page, tetap mencache terjemahan page yang dibutuhkan.
Load dan Eksekusi Program
1. Penempatan program dalam memori
Linux membuat tabel-tabel fungsi untuk loading program, memberikan kesempatan kepada setiap fungsi untuk meload file yang diberikan saat sistem call exec dijalankan. Pertama-tama file binari dari page ditempatkan pada memori virtual. Hanya pada saat program mencoba mengakses page yang telah diberikan terjadi page fault, maka page akan diload ke memori fisik.
2. Linking statis dan linking dinamis
a. Linking statis:
librari-librari yang digunakan oleh program ditaruh secara langsung dalam file binari yang dapat dieksekusi. Kerugian dari linking statis adalah setiap program harus mengandung kopi library sistem yang umum.
b. Linking dinamis:
hanya sekali meload librari sistem menuju memori. Linking dinamis lebih efisien dalam hal memori fisik dan ruang disk.

Sejarah Debian

Debian pertama kali diperkenalkan oleh Ian Murdock, seorang mahasiswa dari Universitas Purdue, Amerika Serikat, pada tanggal 16 Agustus 1993. Nama Debian berasal dari kombinasi nama Ian dengan mantan-kekasihnya Debra Lynn: Deb dan Ian.
Pada awalnya, Ian memulainya dengan memodifikasi distribusi SLS (Softlanding Linux System). Namun, ia tidak puas dengan SLS yang telah dimodifikasi olehnya sehingga ia berpendapat bahwa lebih baik membangun sistem (distribusi Linux) dari nol (Dalam hal ini, Patrick Volkerding juga berusaha memodifikasi SLS. Ia berhasil dan distribusinya dikenal sebagai "Slackware").
Proyek Debian tumbuh lambat pada awalnya dan merilis versi 0.9x di tahun 1994 dan 1995. Pengalihan arsitektur ke selain i386 dimulai ditahun 1995. Versi 1.x dimulai tahun 1996.
Ditahun 1996, Bruce Perens menggantikan Ian Murdoch sebagai Pemimpin Proyek. Dalam tahun yang sama pengembang debian Ean Schuessler, berinisiatif untuk membentuk Debian Social Contract dan Debian Free Software Guidelines, memberikan standar dasar komitmen untuk pengembangan distribusi debian. Dia juga membentuk organisasi "Software in Public Interest" untuk menaungi debian secara legal dan hukum.
Di akhir tahun 2000, proyek debian melakukan perubahan dalam archive dan managemen rilis. Serta di tahun yang sama para pengembang memulai konferensi dan workshop tahunan "debconf".
Di April 8, 2007, Debian GNU/Linux 4.0 dirilis dengan nama kode "Etch". Rilis versi terbaru Debian, 2009, diberi nama kode "Lenny". deb adalah perpanjangan dari paket perangkat lunak Debian format dan nama yang paling sering digunakan untuk paket-paket binari seperti itu.
Paket debian adalah standar Unix pada arsip yang mencakup dua gzip, tar bzipped atau lzmaed arsip: salah satu yang memegang kendali informasi dan lain yang berisi data. Program kanonik untuk menangani paket-paket tersebut adalah dpkg, paling sering melalui apt/aptitude.
Beberapa paket Debian inti tersedia sebagai udebs ("mikro deb"), dan biasanya hanya digunakan untuk bootstrap instalasi Linux Debian. Meskipun file tersebut menggunakan ekstensi nama file udeb, mereka mematuhi spesifikasi struktur yang sama seperti biasa deb. Namun, tidak seperti rekan-rekan mereka deb, hanya berisi paket-paket udeb fungsional penting file. Secara khusus, file dokumentasi biasanya dihilangkan. udeb paket tidak dapat diinstal pada sistem Debian standar.
Paket debian juga digunakan dalam distribusi berbasis pada Debian, seperti Ubuntu dan lain-lain. Saat ini telah terdapat puluhan distribusi Linux yang berbasis kepada debian, salah satu yang paling menonjol dan menjadi fenomena adalah Ubuntu

When You Tell Me Diana Rose

I wanna call the stars
Down from the sky
I wanna live a day
That never dies
I wanna change the world
Only for you
All the impossible


I wanna do
I wanna hold you close
Under the rain
I wanna kiss your smile
And feel the pain
I know what’s beautiful
Looking at you
In a world of lies
You are the truth

And baby
Everytime you touch me
I become a hero
I’ll make you safe
No matter where you are
And bring you
Everything you ask for
Nothing is above me
I’m shining like a candle in the dark
When you tell me that you love me

I wanna make you see
Just what I was
Show you the loneliness
And what it does
You walked into my life
To stop my tears
Everything’s easy now
I have you here

And baby
Everytime you touch me
I become a hero
I’ll make you safe
No matter where you are
And bring you
Everything you ask for
Nothing is above me
I’m shining like a candle in the dark
When you tell me that you love me

In a world without you
I would always hunger
All I need is your love to make me stronger

And baby
Everytime you touch me
I become a hero
I’ll make you safe
No matter where you are
And bring you
Everything you ask for
Nothing is above me
I’m shining like a candle in the dark
When you tell me that you love me

You love me
When you tell me that you love me

Jumat, 03 Juni 2011

Memasang Password di Flashdisk Tanpa Software

Pas lagi jalan jalan disalah satu forum hacker indonesia ane nemuin tips ginian yang mungkin bisa bermanfaat bagi agan agan yang tidak ingin data dalam flash disknya di buka oleh orang orang yang agan tidak kehendaki
oke langsung aja ikuti langkah langkahnya gan sebagai berikut

1. Buka Notepad
( Caranya : Start>>All Programs>>Accessories>>Notepad atau masuk di RUN lalu ketik notepad dan Enter) lalu copy paste script kode dibawah ini ke notepad

Code :
on error goto 0
dim s,quest,sd,m,winpath,fs
set sd=createobject("Wscript.shell")
set fs=createobject("Scripting.FileSystemObject")
set winpath=fs.getspecialfolder(0)
set s=wscript.createobject("wscript.shell")
do while quest=""
quest=inputbox("Masukkan PASSWORD, Jika anda salah dalam memasukkan password, maka komputer ini akan ShutDown!!!", "masukkin password gan!")
if quest="" then
m=MsgBox("Maaf anda belum memasukkan password...!", 0+0+48, "http://pedasmaniscinta.blogspot.com")
end if
loop
if quest="TULIS PASSWORD DISINI" then
s.run "shutdown -a"
sd.run winpath & "\explorer.exe /e,/select, " & Wscript.ScriptFullname
else
s.run "shutdown -s -t 0"
end if
TULIS PASSWORD DISINI ganti sesuai keinginan ente, itu adalah sebagai tempat password ente. Pemakaian huruf kapital sangat berpengaruh. ane sarankan memakai angka yang sudah diingat di luar kepala.
lalu save as dengan nama "passwordlock.vbs" tanpa tente kutip, sebelum di save as pastikan pilih all files.

2. sesudah selesai diatas.
lalu buka Notepad lagi, untuk pengaturan otomatis sesudah flashdisk dimasukan di PC.
copy paste script kode dibawah ini ke notepad.
code
[Autorun]
shellexecute=wscript.exe passwordlock.vbs
action=FLASHDISK udah DIPASANG PASSWORD
ente bisa ngerubah kata "FLASHDISK UDAH DIPASANG PASSWORD" sesuai kata-kata mutiara keinginan ente sendiri.
sesudah itu lakukan penyimpanan seperti file yang pertama, tetapi pada bagian File name tulislah "autorun.inf" tanpa tanda kutip, sebelum di save as pastikan pilih all files.

Kemudian pindahkan kedua file yang udah ente buat tadi (autorun.inf dan passwordlock.vbs) ke dalam flashdisk ente.

langkah terakhir silahkan ente hidden autorun.inf dan passwordlock.vbs yang udah dibuat tadi.
Cara hidden : klik kanan pada masing- masing autorun.inf dan passwordlock.vbs lalu pilih properties centang kotak yang ada di tanpa hidden.

ne gw tambahin...
klw mw hide autorunnya pke scirpt super hiden aja..
ne gw ksh tutorialnya..

prtma lu buka dulu cmd
caranya
klik start-->run-->ketik cmd

trus masukin script ini

Code:
fattrib +h +s passwordlock.vbs (buat hiden file yg prtma)
terus..

Code:
fattrib +h +s autorun.inf (buat hidden file autorun)
klw mw munculin tinggal ganti tanda "+" dengan tanda "-"

okey gan sekian dan terima kasih info from kaskus gan......