Jumat, 05 Maret 2010

STRUKTUR SISTEM OPERASI PADA LINUX

Sistem Operasi Linux
Secara teknis dan singkat dapat dikatakan, Linux adalah suatu sistem operasi yang bersifat multi user dan multitasking, yang dapat berjalan di berbagai platform, termasuk prosesor INTEL 386 dan yang lebih tinggi. Sistem operasi ini mengimplementasikan standard POSIX. Linux dapat berinteroperasi secara baik dengan sistem operasi yang lain, termasuk Apple, Microsoft dan Novell. 
Nama Linux sendiri diturunkan dari pencipta awalnya, LINUS TORVALDS, yang sebetulnya mengacu pada kernel dari suatu sistem operasi, suatu penamaan yang biasa digunakan untuk mengacu ke pada suatu kumpulan lengkap software, yang bersama-sama dengan kernel menyusun suatu sistem operasi yang lengkap.

Perbedaan mendasar Linux
Satu hal yang membedakan Linux terhadap sistem operasi lainnya adalah, harga. Linux ini GRATIS. Berarti dapat diperbanyak, dan didistribusikan kembali tanpa harus membayar fee atau royalti kepada seseorang. Tetapi banyak isue lainya dengan bersifat free, selain dari pertimbangan harga. Source code Linux tersedia bagi setiap orang. Perkembangan Linux menunjukkan pentingnya perananan kebebasan ini. Hal ini telah menghasilkan suatu tingkat keterlibatan yang menakjugkan dari ribuan atau bahkan ratusan ribu orang di seluruh dunia.
Kebebasan ini telah memungkinkan para vendor perangkat keras membuat driver untuk divais tertentu tanpa harus mendapatkan lisensi source code yang mahal, atau menandatangani non descructive agreement. Dan itu juga telah menyediakan kemungkinan bagi mahasiswa ilmu komputer di seluruh dunia untuk melihat ke dalam suatu sistem operasi yang nyata dan berkualitas komersial.
Karena Linux itu tersedia secara bebas di Internet, berbagai vendor telah membuat suatu paket distribusi, yang dapat dianggap sebagai berbagai versi kemasan Linux. paket ini termasuk lingkungan Linux lengkap, perangkat lunak untuk instalasi, dan mungkin termasuk perangkat lunak khusus, dan dukungan khusus.

STRUKTUR SISTEM OPERASI
Pendekatan yang umum suatu sistem yang besar dan kompleks adalah dengan memecah tugas-tugas (task) ke bentuk komponen-komponen kecil dibandingkan dalam bentuk sistem tunggal (monolithic). Komponen-komponen tersebut akan akan di bahas pada bagian berikut ini.

Struktur Sederhana
Banyak sistem operasi komersial yang tidak terstruktur dengan baik. Kemudian sistem operasi dimulai dari yang terkecil, sederhana dan terbatas lalu berkembang dengan ruang lingkup originalnya. Contoh dari sistem operasi ini adalah MS-DOS dan UNIX. MS-DOS merupakan sistem operasi yang menyediakan fungsional dalam ruang yang sedikit sehingga tidak dibagi menjadi beberapa modul,

Sedangkan UNIX menggunakan struktur monolitik dimana prosedur dapat saling dipanggil ole prosedur lain di sistem bila diperlukan dan kernel berisi semua layanan yang disediakan system operasi untuk pengguna [Bambang2002]. Inisialisasi-nya terbatas pada fungsional perangkat keras yang terbagi menjadi dua bagian yaitu kernel dan sistem program. Kernel terbagi menjadi serangkaian interface dan device driver dan menyediakan sistem file, penjadwalan CPU, manajemen memori, dan fungsi-fungsi sistem operasi lainnya melalui system calls.

Microkernels
Metode struktur ini adalah menghilangkan komponen-komponen yang tidak diperlukan dari kernel dan mengimplementasikannya sebagai sistem dan program-program level user. Hal ini akan menghasilkan kernel yang kecil. Fungsi utama dari jenis ini adalah menyediakan fasilitas komunikasi antara program client dan bermacam pelayanan yang berjalan pada ruang user. Contoh sistem operasi yang menggunakan metode ini adalah TRU64 UNIX, MacOSX dan QNX
Keuntungan dari kernel ini adalah kemudahan dalam memperluas sistem operasi, mudah untuk diubah ke bentuk arsitektur baru, kode yang kecil dan lebih aman. Kelemahannya adalah kinerja akan berkurang selagi bertambahnya fungsi-fungsi yang digunakan.
Didalam perkembangan struktur dasar dari sistem operasi terbagi menjadi lima jenis, yaitu :
a. Sistem Monolitik
Sistem operasi sebagai kumpulan prosedur yang dapat dipanggil oleh prosedur lain jika diperlukan. Prosedur ini terdapat didalam kernel atau inti. Menggunakan konsep kernel loadable modules guna pengembangan, pengujian dan fleksibilitas sistem operasi. Contoh : Unix

b. Sistem Berlapis ( layers )
Sistem operasi yang dibentuk secara hierarki berdasar lapisan-lapisan, dimana lapisan bawah memberi layanan terhadap lapisan diatasnya.Contoh : THE
c. Sistem Mesin Maya
Sistem operasi yang melakukan simulasi mesin nyata yang memberikan fleksibilitas tinggi dan memungkinkan sistem operasi yang berbeda dapat dijalankan pada mesin komputer tersebut atau dapat juga disebut sebagai operating system emulator. Contoh Windows NT, Linux dengan DOSEMU. WINE agar aplikasi windows dapat dijalankan di sistem operasi Linux.
d. Sistem Client/Server
Sistem operasi yang dibagi fungsinya menjadi proses yang menyediakan layanan ( server ) dan proses yang memerlukan/ meminta layanan ( client ) didalam memproses data. Contoh : Windows 2000 Server, Linux.
e. Sistem Berorientasi Objek
Sistem operasi ini merealisasikan layanan sebagai kumpulan proses dan terstuktur serta memisahkan layanan yang disediakan dan implementasinya. Contoh : Amoeba, Eden, X-Kernel.
Perbandingan Linux terhadap sistem operasi lainnya
Linux disusun berdasarkan standard sistem operasi POSIX, yang sebenarnya diturunkan berdasarkan fungsi kerja UNIX. UNIX kompatibel dengan Linux pada level system call, ini berarti sebagian besar program yang ditulis untuk UNIX atau Linux dapat direkompilasi dan dijalankan pada sistem lain dengan perubahan yang minimal.
Secara umum dapat dikatakan Linux berjalan lebih cepat dibanding Unix lain pada hardware yang sama. Dan lagi UNIX memiliki kelemahan, yaitu tidak bersifat free. MS-DOS memiliki kemiripan dengan Linux, yaitu file sistem yang bersifat hirarkis. Tetapi MS-DOS hanya dapat dijalankan pada prosesor x86, dan tidak mendukung multi-user dan multi-tasking, serta tak bersifat free. Juga MS-DOS tidak memiliki dukungan yang baik agar dapat berinteroperasi dengan sistem operasi lainnya, termasuk tidak tersedianya perangkat lunak network, program pengembang, dan program utilitas yang ada dalam Linux. Microsoft Windows menawarkan beberapa kemampuan grafis yang ada pada Linux termasuk kemampuan networking, tetapi tetap memiliki kekurangan yang telah ada pada MS-DOS.
Windows NT yang juga tersedia untuk Digital Alpha dan juga prosesor x86 juga memiliki beberapa kekurangan yang telah ada pada MS-DOS. Waktu untuk menemukan suatu bug dalam suatu sistem operasi ini tak sebanding dengan harga yang harus dibayar.
Sistem operasi Apple untuk Macintosh hanya dapat berjalan di sistem Mac. Juga memiliki kekurangan dari sisi ketersediaan perangkangkat bantu pengembang (development tool), dan juga kurang dapat secara mudah untuk berinteroperasi dengan sistem operasi lainnya. Apple juga telah memungkinkan Linux dapat dijalankan pada PowerMac.

ORGANISASI FILE

Sistem file pada Linux menyerupai pepohonan (tree), yaitu dimulai dari root, kemudian direktory dan sub direktory. Sistem file pada Linux diatur secara hierarkikal, yaitu dimulai dari root dengan symbol “/” seperti Gambar 3.1

Kita dapat menciptakan File dan Direktori mulai dari root ke bawah. Direktori adalah file khusus, yang berisi nama file dan INODE (Pointer yang menunjuk ke data / isi file tersebut). Secara logika, direktori dapat berisi File dan Direktori lagi (disebut juga Subdirektori).

2. DIREKTORI STANDAR

Setelah proses instalasi, Linux menciptakan system file yang baku, terdiri atas direktory sebagai berikut :



Direktori /etc
Berisi file yang berhubungan dengan administrasi system, maintanance script, konfigurasi, security dll. Hanya superuser yang boleh memodifikasi file yang berada di direktori ini. Subdirektori yang sering diakses pada direktori /etc antaran lain :
• Httpd, apache web server.
• Ppp, point to point protocol untuk koneksi ke internet.
• rc.d atau init.d , inisialisasi (startup) dan terminasi (shutdown) proses di Linux dengan konsep runlevel.
• cron.d rincian proses yang dieksekusi dengan menggunakan jadwal ( time dependent process)
• FILES, file security dan konfigurasi meliputi : passwd, hosts, shadow, ftpaccess, inetd.conf, lilo.conf, motd, printcap, profile, resolv.conf, sendmail.cf, syslog.conf, dhcp.conf, smb.conf, fstab.

Direktori /dev
Konsep Unix dan Linux adalah memperlakukan peralatan hardware sama seperti penanganan file. Setiap alat mempunyai nama file yang disimpan pada direktori /dev.



Direktori /proc

Direktori /proc adalah direktori yang dibuat diatas RAM (Random Access Memory) dengan system file yang diatur oleh kernel. /proc berisi nomor proses dari system dan nama driver yang aktif di system. Semua direktori berukuran 0 (kosong) kecuali file kcore dan self. Setiap nomor yang ada pada direktori tsb merepresentasikan PID (proses ID).

3. TIPE FILE
Pada Linux terdapat 6 buah tipe file yaitu :
• Ordinary file
• Direktori
• Block Device ( Peralatan I/O )
Merupakan representasi dari peralatan hardware yang menggunakan transmisi data per block (misalnya 1 KB block), seperti disk, floppy, tape.

• Character Device (Peralatan I/O)
Merupakan representasi dari peralatan hardware yang menggunakan transmisi data karakter per karakter, seperti terminal, modem, plotter dll.

• Named Pipe (FIFO)
File yang digunakan secara intern oleh system operasi untuk komunikasi antar proses.
• Link File

4. PROPERTI FILE
File mempunyai beberapa atribut, antara lain :
• Tipe file : menentukan tipe dari file, yaitu :


• Ijin akses : menentukan hak user terhadap file ini.
• Jumlah link : jumlah link untuk file ini.
• Pemilik (owner) : menentukan siapa pemilik file ini
• Group : menentukan grup yang memiliki file ini
• Jumlah karakter : menentukan ukuran file dalam byte
• Waktu Pembuatan : menentukan kapan file terakhir dimodifikasi
• Nama File : menentukan nama file yang dimaksud
Fortran
Fortran (atau FORTRAN) adalah sebuah bahasa pemrograman. Pertama kali dikembangkan pada tahun 1950 dan digunakan dalam bidang sains selama 50 tahun kemudian.
Pertama kali bernama FORTRAN yang merupakan singkatan dari Formula Translator/Translation, tetapi penggunaan huruf besar kemudian ditiadakan sejak versi Fortran 90.
Pertama kali dikembangkan merupakan bahasa pemrograman prosedural, akan tetapi versi-versi terbaru dari Fortran kemudian dikembangkan dengan memasukkan kemampuan object-oriented programming.
Pemrograman di Linux
Sebagian besar distribusi Linux mendukung banyak bahasa pemrograman. Koleksi peralatan untuk membangun aplikasi dan program-program sistem operasi yang umum terdapat di dalam GNU toolchain, yang terdiri atas GNU Compiler Collection (GCC) dan GNU build system.
GCC menyediakan kompilator untuk Ada, C, C++, Java, dan Fortran. Kernel Linux sendiri ditulis untuk dapat dikompilasi oleh GCC. Kompilator tak bebas (proprietary) untuk Linux antara lain adalah Intel C++ Compiler dan IBM XL C/C++ Compiler.
Kebanyakan distribusi juga memiliki dukungan untuk Perl, Ruby, Python dan bahasa pemrograman dinamis lainnya. Contoh bahasa pemrograman yang tidak umum tetapi tetap mendapat dukungan di Linux antara lain adalah C# dengan proyek Mono yang disponsori oleh Novell, dan Scheme.
Sejumlah Java Virtual Machine dan peralatan pengembang jalan di Linux termasuk Sun Microsystems JVM (HotSpot), dan J2SE RE IBM, serta proyek-proyek sumber terbuka lainnya seperti Kaffe. Dua kerangka kerja utama untuk pengembangan aplikasi grafis di Linux adalah GNOME dan KDE.
Proyek-proyek ini berbasiskan GTK+ dan Qt. Keduanya mendukung beragam bahasa pemrograman. Untuk Integrated development environment terdapat Anjuta, Code::Blocks, Eclipse, KDevelop, Lazarus, MonoDevelop, NetBeans, dan Omnis Studio, sedangkan penyunting teks yang telah lama tersedia adalah Vim dan Emacs.[23]
C#
C# (dibaca: C sharp) merupakan sebuah bahasa pemrograman yang berorientasi objek yang dikembangkan oleh Microsoft sebagai bagian dari inisiatif kerangka .NET Framework. Bahasa pemrograman ini dibuat berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-aspek ataupun fitur bahasa yang terdapat pada bahasa-bahasa pemrograman lainnya seperti Java, Delphi, Visual Basic, dan lain-lain) dengan beberapa penyederhanaan. Menurut standar ECMA-334 C# Language Specification, nama C# terdiri atas sebuah huruf Latin C (U+0043) yang diikuti oleh tanda pagar yang menandakan angka # (U+0023). Tanda pagar # yang digunakan memang bukan tanda kres dalam seni musik (U+266F), dan tanda pagar # (U+0023) tersebut digunakan karena karakter kres dalam seni musik tidak terdapat di dalam keyboard standar.

google.com

1 komentar:

  1. bagus, aku suka komputer. coba ikam liat di blog ini http://cara-carahacking.blogspot.com
    selamat bersenang2...

    BalasHapus