Kernel Linux berusia 31 tahun

Pada tanggal 25 Agustus 1991, setelah lima bulan pengembangan, siswa berusia 21 tahun Linus Torvalds mengumumkan di telekonferensi comp.os.minix bahwa prototipe kerja dari sistem operasi Linux baru telah selesai, porting bash 1.08 dan gcc 1.40 telah telah selesai. Rilis publik pertama dari kernel Linux diperkenalkan pada 17 September. Kernel 0.0.1 dikompresi sebesar 62 KB dan berisi sekitar 10 baris kode sumber. Kernel Linux modern memiliki lebih dari 30 juta baris kode. Menurut sebuah studi yang ditugaskan oleh Uni Eropa pada tahun 2010, perkiraan biaya pengembangan dari awal sebuah proyek yang mirip dengan kernel Linux modern akan lebih dari satu miliar dolar AS (perhitungan dibuat ketika kernel memiliki 13 juta baris kode) , menurut perkiraan lain - lebih dari 3 miliar.

Kernel Linux terinspirasi oleh sistem operasi MINIX, yang tidak sesuai dengan Linus dengan lisensi terbatasnya. Selanjutnya, ketika Linux menjadi proyek terkenal, para pencela mencoba menuduh Linus secara langsung menyalin kode dari beberapa subsistem MINIX. Serangan itu ditolak oleh Andrew Tanenbaum, penulis MINIX, yang menugaskan seorang siswa untuk membuat perbandingan rinci antara kode Minix dan rilis publik pertama dari Linux. Hasil penelitian menunjukkan hanya ada empat blok kode yang cocok, karena persyaratan POSIX dan ANSI C.

Linus awalnya berpikir untuk menamai kernel Freax, dari kata "free", "freak" dan X (Unix). Tetapi nama "Linux" diberikan ke kernel oleh Ari Lemmke, yang, atas permintaan Linus, menempatkan kernel di server FTP universitas, menamai direktori dengan arsip bukan "freax", seperti yang diminta Torvalds, tetapi "linux ”. Patut dicatat bahwa pengusaha giat William Della Croce (William Della Croce) berhasil mendaftarkan merek dagang Linux dan ingin mengumpulkan royalti dari waktu ke waktu, tetapi kemudian berubah pikiran dan mengalihkan semua hak merek dagang ke Linus. Maskot resmi kernel Linux, penguin Tux, dipilih sebagai hasil kompetisi yang diadakan pada tahun 1996. Nama Tux adalah singkatan dari Torvalds UniX.

Dinamika pertumbuhan basis kode (jumlah baris kode sumber) kernel:

  • 0.0.1 - September 1991, 10 ribu baris kode;
  • 1.0.0 - Maret 1994, 176 ribu baris kode;
  • 1.2.0 - Maret 1995, 311 ribu baris kode;
  • 2.0.0 - Juni 1996, 778 ribu baris kode;
  • 2.2.0 - Januari 1999, 1.8 juta baris kode;
  • 2.4.0 - Januari 2001, 3.4 juta baris kode;
  • 2.6.0 - Desember 2003, 5.9 juta baris kode;
  • 2.6.28 - Desember 2008, 10.2 juta baris kode;
  • 2.6.35 - Agustus 2010, 13.4 juta baris kode;
  • 3.0 - Agustus 2011, 14.6 juta baris kode.
  • 3.5 - Juli 2012, 15.5 juta baris kode.
  • 3.10 - Juli 2013, 15.8 juta baris kode;
  • 3.16 - Agustus 2014, 17.5 juta baris kode;
  • 4.1 - Juni 2015, 19.5 juta baris kode;
  • 4.7 - Juli 2016, 21.7 juta baris kode;
  • 4.12 - Juli 2017, 24.1 juta baris kode;
  • 4.18 - Agustus 2018, 25.3 juta baris kode.
  • 5.2 - Juli 2019, 26.55 juta baris kode.
  • 5.8 - Agustus 2020, 28.4 juta baris kode.
  • 5.13 - Juni 2021, 29.2 juta baris kode.
  • 5.19 - Agustus 2022, 30.5 juta baris kode.

Kemajuan Pengembangan Inti:

  • Linux 0.0.1 - September 1991, rilis publik pertama yang hanya mendukung CPU i386 dan mem-boot dari floppy;
  • Linux 0.12 - Januari 1992, kode mulai didistribusikan di bawah lisensi GPLv2;
  • Linux 0.95 - Maret 1992, menambahkan kemampuan untuk menjalankan Sistem X Window, mengimplementasikan dukungan untuk memori virtual dan partisi swap.
  • Linux 0.96-0.99 - 1992-1993, pekerjaan dimulai pada tumpukan jaringan. Sistem file Ext2 diperkenalkan, dukungan untuk format file ELF ditambahkan, driver untuk kartu suara dan pengontrol SCSI diperkenalkan, pemuatan modul kernel dan sistem file / proc diimplementasikan.
  • Pada tahun 1992, distribusi pertama SLS dan Yggdrasil muncul. Pada musim panas 1993, proyek Slackware dan Debian didirikan.
  • Linux 1.0 - Maret 1994, rilis resmi pertama yang stabil;
  • Linux 1.2 - Maret 1995, peningkatan yang signifikan dalam jumlah driver, dukungan untuk platform Alpha, MIPS dan SPARC, kemampuan tumpukan jaringan yang diperluas, munculnya filter paket, dukungan NFS;
  • Linux 2.0 - Juni 1996, dukungan untuk sistem multiprosesor;
  • Maret 1997: LKML, milis pengembang kernel Linux didirikan;
  • 1998: Meluncurkan klaster pertama berbasis Linux Top500, terdiri dari 68 node dengan CPU Alpha;
  • Linux 2.2 - Januari 1999, meningkatkan efisiensi sistem manajemen memori, menambahkan dukungan untuk IPv6, menerapkan firewall baru, memperkenalkan subsistem suara baru;
  • Linux 2.4 - Februari 2001, dukungan untuk sistem 8 prosesor dan RAM 64 GB, sistem file Ext3, dukungan USB, ACPI;
  • Linux 2.6 - Desember 2003, dukungan SELinux, alat penyetelan parameter kernel otomatis, sysfs, sistem manajemen memori yang didesain ulang;
  • Pada tahun 2005, hypervisor Xen diperkenalkan, yang mengantarkan era virtualisasi;
  • Pada bulan September 2008, rilis pertama platform Android berbasis kernel Linux dibentuk;
  • Pada Juli 2011, setelah 10 tahun mengembangkan cabang 2.6.x, transisi ke penomoran 3.x dilakukan. Jumlah objek di repositori Git telah mencapai 2 juta;
  • Pada 2015, kernel Linux 4.0 dirilis. Jumlah objek git di repositori telah mencapai 4 juta;
  • Pada April 2018, pencapaian 6 juta objek git di repositori inti telah diatasi.
  • Pada Januari 2019, cabang kernel Linux 5.0 dibentuk. Repositori telah mencapai level 6.5 juta objek git.
  • Diterbitkan pada Agustus 2020, kernel 5.8 adalah yang terbesar dalam hal jumlah perubahan semua kernel selama masa proyek.
  • Di kernel 5.13, rekor dibuat untuk jumlah pengembang (2150), yang perubahannya dimasukkan ke dalam kernel.
  • Pada tahun 2021, kode untuk mengembangkan driver di Rust ditambahkan ke cabang kernel Linux-next. Pekerjaan sedang dilakukan untuk memasukkan komponen untuk mendukung Rust di bagian utama inti.
  • Pada Agustus 2022, cabang kernel Linux 6.0 dibentuk, karena ada cukup banyak rilis di cabang 5.x untuk mengubah nomor pertama di nomor versi.

68% dari semua perubahan inti dilakukan oleh 20 perusahaan teratas. Misalnya, ketika mengembangkan kernel 5.19, 10.9% dari semua perubahan disiapkan oleh Intel, 5.7% oleh Linaro, 5.5% oleh AMD, 5.2% oleh Red Hat, 4.1% oleh Google, 3.5% oleh Meta, 3.1% oleh SUSE, 2.9 % oleh Huawei, 2.8% - NVIDIA, 2.7% - Oracle. 11.8% perubahan disiapkan oleh kontributor atau pengembang independen yang tidak secara eksplisit menyatakan karyanya untuk perusahaan tertentu. Dengan 5.19 baris kode yang ditambahkan ke kernel, AMD adalah yang terdepan, dengan pangsa 37.9% (driver amdgpu memiliki lebih dari 4 juta baris kode, yang sebagian besar merupakan file header yang dihasilkan secara otomatis dengan data untuk register GPU).

Sumber: opennet.ru

Tambah komentar