Hẳn là từ này thì quá quen thuộc với dân công nghệ rồi. Linux hiểu nhanh gọn đơn giản là một hệ điều hành, tương tự như Windows hay MacOS vậy. Hiện tại thì Linux cũng rất phổ biến trên thế giới nhờ những đặc điểm riêng biệt của nó.

 

linux

 

Linux cũng tương tự như những hệ điều hành khác, nó là 1 dạng phần mềm (software) cấp cao, đóng vai trò trung gian, hỗ trợ cho người sử dụng máy tính và các phần mềm khác giao tiếp với các thiết bị phần cứng máy tính (hardware). Tuy nhiên không chỉ dừng lại ở desktop, server thông thường, Linux còn được sử dụng trong các siêu máy tính, các thiết bị điện tử gia đình, các hệ thống robot, các hệ thống máy móc phức tạp (như máy gia tốc hạt lớn Large Hadron Collider, tàu ngầm, hệ thống điều khiển đường sắt cao tốc Nhật Bản…).

 

Vậy tại sao chúng ta lại có Linux?

Trở về đầu thập niên 90, chàng sinh viên Linus Torvalds khi sử dụng MINIX – 1 hệ điều hành kiểu Unix – đã thấy được rất nhiều điểm hạn chế, ràng buộc của hệ điều hành này. Từ đó  nảy ra mong muốn viết 1 hệ điều hành tương tự nhưng sẽ cởi mở hơn, tự do hơn (free software). Anh ta đã viết được phần lõi của hệ điều hành (kernel). Tuy nhiên với chỉ kernel thì không tạo nên 1 hệ điều hành được. May mắn là lúc đó dự án GNU của Richard Stallman về 1 “hệ thống phần mềm hoàn chỉnh tương thích với Unix”  lại đang thiếu kernel, trong khi hệ thống ứng dụng cơ bản đã có hết. Thế là Linus Torvalds đã sử dụng GNU tools từ dự án của Stallman kết hợp với kernel của mình để tạo ra 1 hệ điều hành hoàn chỉnh.

Ban đầu thì anh ta định đặt cho OS của mình cái tên Freax (kết hợp giữa free, freak và Unix). Tuy nhiên trong quá trình làm việc, đồng nghiệp của anh ta đặt lại tên là Linux (chỗ thì nói là anh ta muốn troll Linus lookdown, chỗ thì nói đó là viết tắt của Linus’ Unix). Linus đồng ý luôn,  và giờ chúng ta có 1 nền tảng hệ điều hành rất dễ nhớ đến tên “cha đẻ” của nó.

Phát âm:  /ˈlɪnəks/ hoặc /ˈlaɪnəks/ đều được

Và tại sao Linux lại mạnh như vậy?

Chính là nhờ đặc tính mô đun (modular) của nó, từ trong kernel ra đến OS. Khác với kernel của Windows – như 1 khối code lớn mà chắc ít người có cơ hội xem source của nó, cũng như có thể “customize” cho phù hợp mục đích – kernel của Linux có tính mô đun hóa cực kỳ cao, nhờ đó việc thêm bớt mô đun, chỉnh sửa cho phù hợp với các nền tảng phần cứng, phù hợp với mục đích sử dụng rất dễ dàng, và kết quả là Linux có khả năng mạnh mẽ và được ứng dụng rất rộng rãi. Tính mô đun cũng làm tăng khả năng ổn định và bảo mật của hệ điều hành Linux, nhờ việc tách biệt các thành phần trong kernel.

Không chỉ kernel, các công cụ nền tảng (operating system tools) hỗ trợ cho user/application giao tiếp với kernel (tức là hỗ trợ cho người sử dụng thao tác với hệ điều hành, chạy chương trình cũng như phát triển các ứng dụng khác) cũng có tính mô đun đa dạng. Giao diện người dùng hay các ứng dụng đi kèm với OS cũng có thể lựa chọn tùy ý. Thêm vào đó là tính mở (open), nên rất nhiều người có thể cùng phát triển hệ điều hành. Nhờ vậy mà ngày nay ta có rất nhiều bản phân phối (distribution, distro) của Linux, là các hệ điều hành gốc Linux và đã được tinh chỉnh theo mục đích sử dụng.

Theo thông tin từ Linuxfoundation thì hiện nay có hơn 350 distribution khác nhau. Các distribution phổ biến có thể kể đến như: Redhat, Ubuntu, SuSE, Fedora, Knoppix, Debian, CentOS, Fedora, Gentoo, Mint

Học Oracle thì chúng ta dùng Oracle Linux nhé hero

Việt Nam thì mình biết có Há cảo Linux (hình như là Việt hóa 1 distribution nào đó) và Asianux (1 distribution liên minh giữa mấy nước Đông Á với Việt Nam). Tuy nhiên hiện tại thấy cũng không còn tin tức gì, chắc cũng không phát triển nữa

Các distribution không phải đều miễn phí. Từ free ở đây là chỉ sự tự do (freedom) trong việc xây dựng Linux, chứ không phải là miễn phí (without cost or payment). Đơn giản là “cái gì cũng có giá của nó”. Các tập đoàn lớn thấy được tiềm năng của Linux cũng đã đổ cả đống tiền vào nghiên cứu phát triển. Các công ty software tạo ra được những distro mạnh mẽ chuyên dùng thì bán các distro đó, bán customer support để còn có tiền mà trả cho dev và phát triển distro mạnh hơn. Mỗi distribution của Linux có sự đóng góp của hàng trăm hàng ngàn developer trên thế giới chứ không ít. Không thể đòi hỏi 1 OS có tính năng này tính năng kia, chạy ổn định mạnh mẽ, được hỗ trợ từ a -> z, v.v… mà anh lại không bỏ ra xu nào được .boring

(Tất nhiên vẫn có những distro miễn phí nhằm phổ biến Linux đến mọi người, ta vẫn có thể download về xài thoải mái, như Ubuntu, Centos hay Oracle Linux… vậy. Những distro tính tiền thường là những distro có tính “cao cấp, chuyên nghiệp” rồi.)

Việc phát triển các distro hiện nay chủ yếu từ các cộng đồng developer (trong đó 1 số chuyên nghiệp hóa thành các công ty để tạo ra những bản distro mạnh mẽ có tính thương mại), và có sự đóng góp của cộng đồng user. Ngoài ra còn có các cộng đồng developer phát triển các phần mềm chạy trên Linux.

Các developer viết code cho kernel Linux phải tuân theo giấy phép GNU General Public License version 2 (GNU GPLv2, đại khái là về các đặc điểm, quyền hạn đối với phần mềm nguồn mở). Họ cũng phải công khai danh tính và đồng ý với việc code của mình được sử dụng phân phối theo kernel. Nói chung là phải đồng ý cống hiến chất xám của mình cho sự phát triển chung.

1 đặc điểm nữa của Linux là được viết từ rất nhiều ngôn ngữ, trong đó phần lớn là C và C++, ngoài ra còn các ngôn ngữ khác chiếm phần nhỏ như Java, Perl, Lisp…

Điều cuối cùng mình muốn chia sẻ là về hình ảnh chú chim cánh cụt. Thường ta sẽ nghĩ đó là biểu tượng nhưng có lẽ gọi là linh vật thì đúng hơn. Hình ảnh chim cánh cụt cũng xuất phát từ ý tưởng của Linus Torvalds (do hồi ổng đi Úc bị chim cánh cụt cắn thì phải). Sau này được Larry Ewing vẽ trong 1 cuộc thi và được chọn. Chú chim này được gọi là Tux – (T)orvalds (U)ni(x) và đã trở thành 1 hình ảnh đại diện phổ biến cho Linux nói chung.

200px-NewTux.svg

 

Đối với các bản distro thì tùy mỗi bản mà có các logo khác nhau. Như Redhat là biểu tượng anh chàng đội mũ, Debian là 1 vòng xoáy, CentOS là 1 hoa văn hình vuông đối xứng , Ubuntu là vòng tròn, …, nhưng mình thích biểu tượng con tắc kè của SuSE

 

Logos distro

 

Các bạn có thể tham khảo thêm thông tin về Linux trên http://www.linux.comvà xem rất nhiều video tutorial tại http://video.linuxfoundation.org