Apa itu Sistem Operasi Linux?

Apa itu Sistem Operasi Linux?

Pengantar Linux

Linux adalah keluarga sistem operasi mirip Unix sumber terbuka pada kernel Linux, dan kernel OS pertama kali diterbitkan pada 17 September 1991 oleh Linus Torvalds. Biasanya, Linux dikemas sebagai distribusi Linux, yang berisi perpustakaan pendukung dan perangkat lunak sistem serta kernel, beberapa di antaranya ditawarkan oleh Proyek GNU. Beberapa distribusi Linux menggunakan istilah “Linux” pada judulnya, namun Free Software Foundation menggunakan judul “GNU/Linux” untuk fokus pada kebutuhan perangkat lunak GNU, sehingga menimbulkan beberapa kontroversi.
Distribusi Linux yang terkenal adalah Ubuntu, Fedora Linux, dan Debian, yang terakhir terdiri dari beberapa modifikasi dan distribusi berbeda, termasuk Xubuntu dan Lubuntu. Distribusi komersialnya adalah SUSE Linux Enterprise dan Red Hat Enterprise Linux. Distribusi desktop Linux adalah sistem windowing seperti Wayland atau X11 dan lingkungan desktop seperti KDE Plasma dan GNOME.

o Awalnya, Linux dirancang untuk komputer pribadi yang berbasis arsitektur Intel x86, namun sejak itu telah dipindahkan ke lebih banyak lingkungan dibandingkan sistem operasi lain.
o Termasuk Android, Linux memiliki basis terinstal terbesar dari setiap sistem operasi tujuan umum karena kendali Android berbasis Linux melalui ponsel pintar pada Mei 2022.
o Namun, Linux hanya digunakan oleh sekitar 2,6% komputer desktop pada November 2022.
o Selain itu, Linux dijalankan pada banyak sistem tertanam, yaitu perangkat yang OS-nya biasanya dirancang ke dalam firmware dan sangat disesuaikan dengan sistem.
o Ini termasuk pesawat ruang angkasa (Perseverance rover, kapsul kru Dragon, dan roket Falcon 9), mobil (Toyota, Hyundai, Mercedes-Benz, Audi, dan Tesla), televisi (LG dan Samsung Smart TV), konsol video game, perangkat rumah pintar , kontrol otomatisasi, dan router.

Linux adalah salah satu contoh kolaborasi perangkat lunak sumber terbuka dan gratis yang paling menonjol. Kode sumber dapat didistribusikan, dimodifikasi, dan digunakan secara non-komersial atau komersial oleh semua orang di bawah ketentuan lisensinya masing-masing, seperti GNU GPL (General Public License). Misalnya, kernel Linux dilisensikan pada GPLv2.
Sejarah OS Linux

o Prekursor
Sistem operasi berbasis Unix diimplementasikan dan disusun pada tahun 1969 di laboratorium AT&T’s Bell oleh Joe Ossanna, Douglas Mcllroy, Dennis Ritchie, dan Ken Thompson di Amerika Serikat. Pertama kali diterbitkan pada tahun 1971, Unix seluruhnya ditulis dalam bahasa assembly, seperti praktik dasar pada saat itu. Itu diperbarui dalam bahasa C oleh Dennis Ritchie dengan cara perintis utama pada tahun 1973. Ketersediaan implementasi bahasa tingkat tinggi Unix membuat portingnya ke platform komputer yang berbeda menjadi mudah.
o Penciptaan
Torvalds mendaftar dalam kursus Unix saat mengunjungi Universitas Helsinki pada musim gugur tahun 1990-an. Kursus ini menggunakan komputer mini MicroVAX yang menjalankan Ultrix, dan salah satu teks yang diperlukan adalah Sistem Operasi: Desain dan Implementasi oleh Andrews S. Tanenbaum. Buku teks tersebut berisi salinan sistem operasi MINIX Tanenbaum. Bersamaan dengan kursus inilah Torvalds awalnya terbuka untuk Unix. Ia mulai tertarik dengan sistem operasi pada tahun 1991. Frustrasi dengan lisensi MINIX, yang membatasi penggunaannya hanya untuk keperluan pendidikan pada saat itu, ia mulai mengerjakan kernel sistem operasinya, yang akhirnya menjadi Kernel Linux.
Torvalds memulai pengembangan kernel Linux di MINIX, dan perangkat lunak yang ditulis untuk MINIX juga digunakan di Linux. Kemudian Linux dikembangkan, dan kemudian muncul pengembangan kernel Linux di sistem Linux. Selain itu, aplikasi GNU menggantikan setiap komponen MINIX karena penggunaan kode gratis melalui Proyek GNU dengan OS baru bermanfaat; kode yang dilisensikan pada GNU GPL dapat diterapkan kembali pada fungsi komputer lain selama kode tersebut juga diterbitkan di bawah lisensi yang kompatibel atau sama.
Torvalds mulai beralih dari lisensi aslinya, yang melarang distribusi komersial, ke GNU GPL. Pengembang beroperasi untuk mengembangkan elemen GNU dengan Kernel Linux, menjadikannya sistem operasi yang bebas dan berfungsi penuh.
o Perkembangan saat ini
Pemelihara utama Kernel Linux adalah Greg Kroah-Hartman yang memandu pengembangannya. Direktur eksekutif Free Software Foundation adalah William John Sullivan, yang mendukung komponen GNU. Perusahaan dan individu akhirnya mengembangkan komponen pihak ketiga non-GNU.
Komponen pihak ketiga terdiri dari kumpulan pekerjaan yang luas dan mungkin berisi perpustakaan pengguna dan aplikasi, serta modul kernel. Komunitas dan vendor Linux mendistribusikan dan menggabungkan kernel, komponen non-GNU, dan komponen GNU dengan perangkat lunak manajemen paket tambahan seperti distribusi Linux.
o Penyerapan yang populer dan komersial
Dalam lingkungan produksi, adopsi Linux mulai lepas landas pada pertengahan tahun 1990an di komunitas superkomputer dan bukan hanya digunakan oleh penghobi saja, di mana organisasi seperti NASA mulai semakin mengganti mesin mahal mereka dengan cluster komputer komoditas murah yang menjalankan Linux. Penggunaan komersial dimulai ketika IBM dan Dell, diikuti oleh Hewlett-Packard, mulai menyediakan dukungan Linux untuk keluar dari monopoli Microsoft di pasar OS desktop.
Sistem Linux sepenuhnya digunakan dalam komputasi saat ini, mulai dari sistem tertanam hingga setiap superkomputer secara virtual, dan telah mendapatkan posisi dalam instalasi server seperti tumpukan aplikasi LAMP yang terkenal. Penggunaan distribusi Linux di desktop perusahaan dan rumahan telah berkembang.
Selain itu, distribusi Linux telah menjadi terkenal di pasar netbook, dengan beberapa perangkat berpindah dengan menginstal distribusi Linux yang disesuaikan dan Google menerbitkan ChromeOS yang dikembangkan untuk netbook.
Desain OS Linux
Berbagai pengembang open source mengakui bahwa kernel Linux tidak dikembangkan melainkan berevolusi dari seleksi alam. Sistem berbasis Linux adalah OS mirip Unix yang kompatibel, sebagian besar desain umumnya berasal dari prinsip-prinsip yang dibuat di Unix pada tahun 1970an dan 1980an. Sistem seperti ini menerapkan kernel Linux, kernel monolitik yang mengelola sistem file, akses periferal, jaringan, dan kontrol proses. Driver perangkat terintegrasi langsung dengan kernel atau disertakan sebagai modul yang dimuat saat perangkat aktif.

Komponen Sistem Linux yang diinstal meliputi di bawah ini:
o Bootloader, misalnya systemd-boot, SYSLINUX, LILO, dan GNU GRUB. Ini adalah program yang dapat memuat kernel Linux ke dalam memori utama komputer dengan dijalankan oleh komputer setelah login firmware dilakukan dan ketika dihidupkan.
o Program init, seperti sysvinit tradisional dan Pemula yang lebih baru, OpenRC, dan systemd. Ini adalah proses pertama yang diumumkan oleh kernel Linux dan root pohon proses. Dengan kata lain, setiap proses dibuka dari init. Ini memulai proses seperti perintah login dan layanan sistem (baik dalam mode terminal atau grafis).
o Pustaka perangkat lunak, yang mencakup kode yang dapat diterapkan dengan menjalankan proses. Tautan dinamis yang menangani penggunaan perpustakaan dinamis disebut Id-linux.so pada sistem Linux dengan file yang dapat dieksekusi berformat ELF. Selain itu, file header akan ditambahkan untuk menentukan antarmuka perpustakaan yang diinstal jika sistem dikonfigurasikan bagi pengguna untuk mengumpulkan perangkat lunak sendiri. Selain itu, perpustakaan perangkat lunak yang paling banyak digunakan adalah GNU C Library (glibc) pada sistem Linux. Ada beberapa kewajiban lain seperti Mesa dan SDL.
o Pustaka standar C diperlukan untuk menjalankan program C pada sistem yang menggunakan pustaka GNU C sebagai standarnya. Alternatif seperti uClibc (dikembangkan untuk uClinux), EGLIBC (garpu glibc yang pernah digunakan oleh Debian), dan musl telah dikembangkan. Namun, dua yang pertama tidak dipertahankan sekarang. Android menggunakan perpustakaan C-nya, yang dikenal sebagai Bionic.
o Antarmuka pengguna
Juga, antarmuka pengguna disebut shell. Ini bisa berupa GUI (antarmuka pengguna grafis), CLI (antarmuka baris perintah), atau kontrol yang melekat pada perangkat keras terkait, yang normal untuk sistem tertanam. Antarmuka pengguna default adalah grafis untuk sistem desktop. Namun, CLI tersedia melalui jendela emulator terminal atau pada konsol virtual yang terisolasi.
Shell antarmuka baris perintah adalah UI berbasis teks, yang memanfaatkan teks untuk keluaran dan masukan. Shell yang dominan adalah bash (Bourne-Again Shell) yang digunakan di Linux, awalnya dirancang untuk proyek GNU. Hampir setiap komponen Linux tingkat rendah, termasuk beberapa bagian userland, secara eksklusif menggunakan CLI. Khususnya, CLI kompatibel dengan otomatisasi tugas yang tertunda atau berulang dan memberikan komunikasi antar-proses yang sangat mudah.
o GUI shell adalah antarmuka pengguna yang paling terkenal pada sistem desktop, dikemas dengan lingkungan desktop yang luas seperti Xfce, Pantheon, LXDE, Cinnamon, MATE, GNOME, dan KDE Plasma, meskipun terdapat beberapa antarmuka pengguna yang tersedia.
o Sebagian besar antarmuka pengguna terkenal bekerja dengan konsep Sistem X Window, yang dikenal sebagai “X”.
o Menawarkan transparansi jaringan dan memungkinkan aplikasi grafis yang aktif pada suatu sistem ditampilkan pada sistem lain di mana pengguna dapat berkolaborasi dengan aplikasi tersebut.
o Meskipun, ekstensi Sistem X Window tertentu tidak dapat bekerja di jaringan.
o Banyak server tampilan X tersedia dengan Server X.Org, implementasi referensi adalah yang paling terkenal.
o Infrastruktur masukan video
Saat ini, Linux memiliki dua API ruang pengguna kernel untuk menangani perangkat input video: API DVB untuk penerimaan TV dan API V4L2 untuk streaming radio dan video.
Infrastruktur ini perlu dikembangkan agar lebih sesuai dengan perangkat lain karena keragaman dan kompleksitas perangkat yang berbeda dan karena banyaknya standar dan format yang dikelola oleh API tersebut. Pustaka perangkat ruang pengguna yang lebih baik juga merupakan kunci keberhasilan untuk memiliki aplikasi ruang pengguna yang dapat bekerja dengan setiap format yang didukung oleh perangkat.

Ref:[1]