1/30/09

KDE chạy trên Windows!

Với một hệ Linux, cùng một lúc cài vài ba môi trường đồ họa (KDE, GNOME, Xfce, IceWM, Fluxbox, ...) chẳng có gì là khó. Hiện có khoảng hơn một tá môi trường đồ họa như thế. Mỗi môi trường có cái hay cái dở riêng: KDE4 đẹp lộng lẫy nhưng yêu cầu cấu hình cao và cũng chưa đủ độ chín, GNOME khá phổ biến, rất nhiều bản Linux lấy nó làm môi trường mặc định, Xfce là môi trường nhẹ, dành cho máy cấu hình thấp hoặc những người thích nhanh, không cầu kỳ về hình thức, v.v...Ứng dụng viết cho môi trường này, nói chung có thể chạy tốt trong môi trường khác. Lúc log in, có thể chọn môi trường nào tùy thích. Do đó:

  • Cùng một bản Linux có thể cài trên máy có cấu hình mạnh yếu khác nhau. Vd: máy mạnh chạy KDE4, máy yếu: Xfce. Các ứng dụng khác như OpenOffice vẫn giống nhau. Do đó với máy yếu vẫn dùng được hệ điều hành mới nhất, chỉ kém đẹp hơn máy mạnh.

  • Cùng trên một máy có thể log in vào các môi trường khác nhau. Vd: lúc cần làm việc nhanh dùng GNOME hoặc Xfce, lúc thong thả dùng KDE4 cho đẹp. Trong màn hình log in, nhấn vào icon dưới đáy màn hình đó để chọn.


Trước đây, thực hiện điều sau hơi khó vì mỗi môi trường lại có một bộ gõ tiếng Việt khác nhau: KDE dùng x-unikey, GNOME dùng xvnkb. Nay thống nhất được bộ gõ scim thì không còn là vấn đề nữa.

Nguyên một việc này cũng cho thấy cái tự do phóng khoáng của PMNM hơn hẳn Windows như thế nào.

(Ví dụ cách cài: với Mandriva 2009, mở Software Management, chọn Meta package, bên dưới mục Graphic Desktop chọn môi trường nào cài thêm tùy ý, sau đó cài gói ví dụ task-gnome-minimal. Các bản Linux khác, tên gói có thể khác: gnome-desktop, ...).

Cài máy ảo lên Windows rồi cài Linux lên máy ảo cũng không còn là cái gì mới nữa. Điều dưới đây mới là mới:

Phiên bản KDE 4.2 mới nhất vừa ra đời 27/1/2009 có thể cài và chạy được trên Windows, MacOS (bản thử nghiệm) và sắp tới sẽ chạy trên OpenSolaris, FreeBSD.

Trong Windows (từ 2000 đến Vista), tải chương trình Installer (kdewin-installer-gui-latest.exe) tại đây. Sau đó cho chạy file nói trên và theo các màn hình hướng dẫn tùy chọn các chương trình để tải về tự động cài (khoảng vài chục MB). Sau khi cài xong, các chương trình KDE sẽ xuất hiện trong menu Start, nhấn vào chạy trực tiếp trên Windows (không phải qua máy ảo) như chương trình Windows thông thường (tuy hơi chậm), .

Màn hình ví dụ:

kdewin42_plasma-tasks-thumb-640xauto-3401

Chú ý là trên màn hình này chỉ có Windows Task Manager là của Windows. Còn lại panel, desktop, trình quản lý file Dolphin, các widget (đồng hồ, lịch, folder view...) đều của KDE. Bên dưới nó là Windows!

Hướng dẫn chi tiết xem thêm tại đây.

Tôi đã thử, gõ được tiếng Việt bằng unikey for Windows trong KWrite.

1/28/09

Linux Mint 6 (Felicia)

Năm kia, nếu tôi nhớ không nhầm thì Linux Mint luôn đứng trong TOP 5 trên DistroWatch. Trong 12 tháng qua, luôn đứng thứ 3 chỉ sau có Ubuntu và OpenSUSE. Vì vậy cũng đáng để tìm hiểu.

Theo DistroWatch.com:

"Linux Mint... ban đầu được công bố như một phiên bản của Ubuntu với media codecs cài sẵn, nay nó đã phát triển thành một trong những bản Linux thân thiện nhất với người dùng... Điều quan trọng nhất là đây là một dự án mà các nhà phát triển và người dùng tương tác với nhau thường xuyên..."

Các nguyên nhân thành công theo chính Linux Mint:

  • Một trong những bản Linux hướng người dùng nhất. Bạn có thể post ý kiến lên diễn đàn và tuần sau đã thấy nó được thực hiện trong phiên bản hiện hành.

  • Mint dựa trên nền Debian, một bản Linux ổn định nhất và có kho phần mềm lớn nhất.

  • Tương thích và sử dụng được các kho phần mềm của Ubuntu. Do đó số lượng phần mềm có sẵn rất lớn.

  • Có nhiều cải tiến trong cấu hình nên user dễ thực hiện.

  • Tập trung làm sẵn mọi việc đến mức tối đa có thể nên dễ sử dụng.


Một vài nhận xét sơ bộ: (bản Mint 6 dựa trên Ubuntu 8.10)

  • Nhóm phát triển khoảng 20 người, có bán dịch vụ support (30USD/tháng với người dùng ở nhà) và dựa vào tiền quyên góp, quảng cáo trên site. Mô hình kinh doanh kiểu này yếu và dễ suy thoái như PCLinuxOS. Hiện tại thì cập nhật nhanh: chỉ ít lâu sau khi có Ubuntu 8.10 đã có Mint 6.

  • Tiếng Việt trong Mint dùng scim-unikey gõ tốt. Khi cài nhớ cài scim-brige và vào Language Support để enable support to enter complex characters.

  • Có Control Center tập trung giống PCLinuxOS. Trong đó, ngoài những cái của GNOME, có thêm một số cái riêng của Mint (mintInstall, mintBackup, mintNany, ...). Tuy thua Mandriva và PCLinuxOS ở các wizard, nhưng khá hơn Ubuntu. Riêng mintInstall là một trình quản lý các phần mềm khá, có nhiều thông tin xem trước khi cài: ý kiến nhận xét, điểm số, trang chủ, ....

  • Các multimedia codecs như gstreamer được cài sẵn nên dùng được ngay (nghe nhạc, xem video với khá nhiều format).

  • Dùng được các kho phần mềm của Ubuntu là một ưu điểm lớn: số lượng phần mềm nhiều và có thể search trong Synaptic theo cả các keyword có trong Description. Riêng mặt này Mandriva thua.

  • Giao diện được, tất nhiên là không bằng Mandriva.

  • Thừa kế luôn cả những nhược điểm của Ubuntu: vẫn dùng OpenOffice 2.4.

  • Bản chính thức dùng GNOME. Chỉ có hai phiên bản: Main Edition và Universal Edition. Bản Universal giống bản Mandriva Free: chỉ gồm các gói phần mềm nguồn mở. Cũng có những bản gọi là Community Edition dùng KDE, Xfce, Fluxbox.


Thử khả năng tương thích phần cứng:

Trên máy notebook Dell Inspiron 700m có cài 4 hệ điều hành: WinXP, Mandriva 2009, PCLinuxOS GNOME 2007 và Linux Mint 6. Nối thêm một màn hình ngoài LCD LG FLATRON L1718S. Lần lượt khởi động từng hệ điều hành nói trên để xem khả năng nhận biết màn hình ngoài. Kết quả:

  • Mandriva 2009 tốt nhất: nhận đúng cả hai màn hình với độ phân giải 1280x800, 65,3Hz (màn hình của notebook) và 1280x1024, 60Hz (màn hình ngoài LG). Trong System Settings, mục Display (cũng chính là công cụ KRandR Tray trong Tools - System Tools) cho phép chỉnh độ phân giải, xoay hướng màn hình, bố trí vị trí từng màn hình được. Tóm lại là đầy đủ.

  • WinXP: màn hình ngoài hiển thị đầy đủ nhưng lại theo tỷ lệ của màn hình notebook do đó bị co chiều thẳng đứng. Lâu không dùng Windows nên cũng không nhớ chỉnh ở đâu và có chỉnh được như Mandriva không.

  • Linux Mint 6: màn hình ngoài bị đặt ở độ phân giải 1024x768, đã chỉnh lại thành 1280x1024 nhưng không nhận.

  • PCLinuxOS: màn hình ngoài bị phóng to mất các mép màn hình. Thử chỉnh lại không được.


Tóm lại như đã nhận xét trong một post trước đây khi so sánh vài hệ Linux, Mandriva có vẻ tương thích phần cứng khá nhất và có các công cụ cấu hình đầy đủ nhất. Để khi nào có dịp sẽ thử với Ubuntu xem sao.

Kết luận: Nếu thích Ubuntu thì nên dùng Mint vì dễ dùng hơn.

Các kho phần mềm nguồn mở tại Việt nam

Một số công ty, tổ chức tại Việt nam hiện đã cung cấp các server lưu trữ phần mềm nguồn mở. Tìm kiếm, tải về và cập nhật từ các kho này đương nhiên là nhanh hơn nhiều so với các kho ở nước ngoài.

1- FPT

Địa chỉ server của FPT là http://mirror-fpt-telecom.fpt.net/

Tại đây có các bản Linux Fedora, Ubuntu, CentOS, Mandriva, Debian, OpenSUSE, Slackware và một số phần mềm: OpenOffice, KDE, GNOME, Apache, ....

Trong các bản Linux, Ubuntu có vẻ đầy đủ hơn cả gồm các file iso cho desktop và server từ 6.04 đến bản mới nhất là 8.10. Ngoài ra còn có các kho phần mềm (repository) để cài đặt và cập nhật. Thay cho các repo của Ubuntu có thể add các địa chỉ sau:

deb http://mirror-fpt-telecom.fpt.net/ubuntu/ intrepid main restricted universe multiverse
deb http://mirror-fpt-telecom.fpt.net/ubuntu/ intrepid-security main restricted universe multiverse
deb http://mirror-fpt-telecom.fpt.net/ubuntu/ intrepid-updates main restricted universe multiverse
deb http://mirror-fpt-telecom.fpt.net/ubuntu/ intrepid-proposed main restricted universe multiverse

(Bỏ chọn các kho tương ứng của Ubuntu).

OpenSUSE cũng có chất lượng kho tương đương Ubuntu (gồm cả bản iso 11.1 và các repo). CentOS có bản mới nhất là 5.2.

Mandriva trên server này quá cũ (chỉ có bản 2009.1 alpha và không cập nhật, chắc là không được đăng ký trong mirror list của Mandriva). Các phần mềm khá hơn: KDE có bản mới nhất 4.2, OpenOffice có bản 3.0 hoàn toàn Việt hóa, Firefox có bản 3.1 beta2.

Nhìn chung, server của FPT có nhiều PMNM, tốc độ khá nhanh (khoảng 250 - 300KB/s) xứng đáng là cty Tin học số 1 Việt nam. Việt nam thôi vì cách quản lý còn tùy hứng, cái nào không quan tâm thì bỏ. Hy vọng là FPT sẽ cải tiến.

2- OpenLAB:

Tên thì hoành tráng nhưng kho phần mềm có mỗi Ubuntu 8.10 và Moblin. Với Ubuntu 8.10 có thể add các repository này:

deb http://www.oss-hcm.gov.vn/ubuntu/ intrepid main restricted universe multiverse
deb http://www.oss-hcm.gov.vn/ubuntu/ intrepid-security main restricted universe multiverse
deb http://www.oss-hcm.gov.vn/ubuntu/ intrepid-updates main restricted universe multiverse
deb http://www.oss-hcm.gov.vn/ubuntu/ intrepid-proposed main restricted universe multiverse
deb http://www.oss-hcm.gov.vn/ubuntu/ intrepid-backports main restricted universe multiverse

Tôi không dùng cái này bao giờ nên không rõ chất lượng ra sao.

Hai Tổng thống đối mặt với vấn đề PMNM

Nhưng theo hai cách khác nhau: một chủ động và một bị động.

Theo tin của BBC ngày 21/1/2009, Chính phủ mới của Tổng thống Mỹ Obama đã yêu cầu Chủ tịch công ty Sun Microsystem, Scott McNealy chuẩn bị một bản báo cáo về việc chính phủ có thể trở nên an toàn và hiệu quả hơn như thế nào nếu sử dụng các công nghệ và sản phẩm nguồn mở. Rất đáng chú ý là yêu cầu này đặt ra ngay trong tuần làm việc đầu tiên của chính phủ mới.

Đương nhiên là Mr. McNealy, chủ tịch của một công ty đã có những đóng góp rất lớn vào phong trào PMNM (xem post "Các đại công ty tin học và PMNM") nhiệt thành ủng hộ cho việc sử dụng PMNM trong chính phủ Mỹ:"PMNM sẽ cải thiện an ninh, chất lượng phần mềm cao hơn, độ tin cậy cao hơn và chi phí thấp hơn".

BBC dẫn các nguồn tin khác đánh giá rằng lãng phí do dùng các phần mềm nguồn đóng trên toàn cầu cỡ 1000 tỷ một năm và riêng chính phủ Mỹ khoảng 400 tỷ USD.

Trước đó, các bộ ngành trong chính quyền Mỹ cũng đã xem xét đến việc này. Ví dụ, gần đây bộ Quốc phòng Mỹ đang soạn thảo một quy định hướng dẫn việc mua sắm và sử dụng PMNM trong bộ.

Ảnh hưởng của báo cáo này và chính phủ Mỹ quyết định ra sao thì phải chờ hồi sau mới rõ. Tuy nhiên, ngay việc ra đời của báo cáo nói trên cũng đã chứng tỏ sức mạnh và độ chín của PMNM đến mức nào.

Theo tin của CNews ngày 15/1/2009 (bản tiếng Ngabản dịch tự động tiếng Anh), Quốc hội Nga (Đuma Quốc gia) đang chuẩn bị một văn bản gửi Tổng thống Medvedev yêu cầu hỗ trợ một chương trình cấp liên bang xây dựng "hệ điều hành quốc gia - национальной операционной системы".

Ý tưởng này nảy sinh trong cuộc hội nghị bàn tròn cuối năm ngoái bàn về "An ninh quốc gia về Công nghệ Thông tin" theo sáng kiến của nghị sỹ Ilya Ponomarev, chủ tịch tiểu ban phát triển công nghệ.

Mặc dù trong văn bản ngụ ý rằng cơ sở của hệ điều hành quốc gia sẽ là các hệ điều hành PMNM hiện có, mức độ mở vẫn còn để ngỏ để không làm Tổng thống rối trí vì những chi tiết kỹ thuật.


(Хотя подразумевается, что основой для нее станут уже существующие системы с открытым кодом, вопрос о степени ее свободности в письме «останется открытым, чтобы не загружать президента техническими подробностями».).

Tổng thống Medvedev sẽ quyết định thế nào? Cũng phải chờ hồi sau sẽ rõ. Tuy nhiên xét theo bức ảnh có trong bản tin nói trên thì ông không phải tín đồ của Windows.

An ninh của các mạng máy tính nhạy cảm là một mối quan tâm của các chính phủ hiện nay. Xây dựng các hệ điều hành nguồn mở từ gốc (from scratch), về nguyên tắc các chính phủ có thể kiểm soát từng dòng lệnh bên trong hệ điều hành để chắc chắn rằng không có một "cổng hậu" hoặc một quả bom nổ chậm nào được cài sẵn và cũng chủ động kiểm soát được một sản phẩm tự mình xây dựng hơn là một sản phẩm đóng kín của nước ngoài.

Ngay từ năm 1999, quỹ đầu tư mạo hiểm quốc doanh Shanghai NewMargin Venture Capital và sau này  thêm quỹ CCIDNET Investment của bộ Công nghiệp Thông tin Trung quốc đã tài trợ cho việc xây dựng hệ điều hành Linux Hồng kỳ. Gần đây có tin rằng các quán cafe Internet của Trung quốc bắt buộc phải cài hệ điều hành này.(xem thêm tại đây). Hồng kỳ là phiên bản Trung quốc của bản Linux Asianux phát triển chung bởi ba công ty Trung quốc, Hàn quốc và Nhật. Gần đây, Việt nam đã tham gia liên minh này.



1/27/09

Hướng dẫn sử dụng Mandriva 2009

Tài liệu Hướng dẫn sử dụng Mandriva 2009 đã up lên site Mediafire (link ở góc trên bên phải màn hình blog). Đây là tài liệu cơ bản, dành cho người sử dụng bình thường, tiếp theo Hướng dẫn cài đặt Mandriva 2009 đã up lên trước đây.

1/23/09

SCIM-UNIKEY trên Mandriva 2009 và Linux Mint 6

UDATE: tin buồn. scim-unikey-0.1.2a có hai lỗi nặng:

  • Xung đột với OpenOffice, đang gõ thì OpenOffice bị đóng bất thình lình (crash).

  • Trong OpenOffice Calc, trong một ô khi đặt con trỏ gõ chen vào giữa hoặc đầu một hàng ký tự đã có thì tiếng Việt nhảy lung tung (gõ chen ở trên thanh nhập liệu thì được).


Bản scim-unikey-0.2 đang sửa khắc phục được lỗi thứ nhất nhưng chưa khắc phục được lỗi thứ hai. Vẫn bị thỉnh thoảng đang gõ thì mất tiếng Việt (lỗi này nguyên bản của x-unikey-1.0.4).

Một món quà mừng Tết tuyệt vời đối với cá nhân tôi: cuối cùng đã có thể gõ tiếng Việt trên Mandriva ở mọi chỗ bằng scim-unikey! Cám ơn các tác giả!

Cách đây ít lâu, tôi đã thử scim-unikey cài bằng tay trên Mandriva 2009 KDE thấy gõ tốt trong các ứng dụng nhưng hoàn toàn không gõ được trên web.

Nay thử lại theo bản cài đặt mới nhất scim-unikey-0.1.2a-1.i386.rpm tải về tại đây với cách làm như sau:

1- Mở Control Center - System - Manage localization for your system. Khi đến bước chọn bộ gõ thì chọn SCIM-BRIDGE.

2- Tải file scim-unikey-0.1.2a-1.i386.rpm nói trên về cài.

3-  Nhấn vào Menu - Run Command rồi chạy scim lần đầu. Nhấn chuột phải vào biểu tượng scim trên panel, chọn SCIM Setup. Trong mục IMEngine - Global Setup - Vietnamese chỉ chọn riêng cách gõ Telex - Unicode.

4- Khởi động lại máy. Xong.

Đã thử gõ trong Mandriva 2009 cả KDE lẫn GNOME: OpenOffice, KMail, Evolution, Google Desktop Search, các ứng dụng web như Gmail, GDocs, Zoho Mail, Zoho Writer, ... đều tốt.

Vẫn còn hai lỗi nhỏ: 1/ thỉnh thoảng mất tiếng Việt phải Ctrl+Space hai lần bật tắt tiếng Việt mới gõ tiếp được (lỗi của bản x-unikey-1.0.4), 2/ phải tắt Word Completion trong AutoCorrect.

Trước đây vẫn cố gắng dùng scim với vi-telex-locdt.mim, nhưng cái phím kết thúc từ khá khó chịu. Nay thì thoát.

Đã thử scim-unikey trên Linux Mint 6. Gõ tốt ( nhớ chọn Menu-Administration-Language support-Enable support to enter complex characters).

Những ai yêu Ubuntu nên thử Linux Mint. Linux Mint dựng trên nền Ubuntu, có Control Center gần sánh được với Control Center của Mandriva (thiếu các wizards) và một số thứ bổ xung khá hay. Không trách nó luôn nằm trong TOP 10 của DistroWatch.

1/16/09

Linux hay GNU/Linux và cấu trúc nhân Linux

CẤU TRÚC NHÂN LINUX


Lược dịch: zxc232


Nguyên bản: Anatomy of the Linux kernel


M. Tim Jones (mtj@mtjones.com), Consultant Engineer, Emulex Corp. 06 Jun 2007



I.Tóm tắt lịch sử Linux


Linux hay GNU/Linux?


Khi thì người ta gọi “hệ điều hành Linux”, lúc lại gọi là “hệ điều hành GNU/Linux”. Lí do là vì Linux thực ra là phần nhân của hệ điều hành. Nhiều các ứng dụng khác bổ xung kết hợp với nhân Linux làm thành một hệ điều hành sử dụng được, các ứng dụng đó phần lớn là phần mềm GNU. Vì vậy nhiều người coi gọi “hệ điều hành GNU/Linux” là đúng, còn tên Linux dùng để chỉ phần nhân của hệ điều hành đó.


GNU là các phần mềm của GNU Project, được gọi là GNU packages or GNU programs. Các thành phần chính gồm: bộ dịch GNU Compiler Collection (GCC), các công cụ mã nhị phân GNU Binary Utilities (binutils), lớp vỏ bash shell, thư viện C GNU C library (glibc), và các công cụ lõi GNU Core Utilities (coreutils).


(GNU Project cũng có dự án làm phần nhân hệ điều hành nhưng chưa xong. Vì vậy hiện nay các hệ điều hành mà ta vẫn gọi là Linux dùng nhân Linux của Linus Tovarlds kết hợp với các gói phần mềm nói trên của GNU Project. Do đó gọi hệ điều hành GNU/Linux thì hợp lý hơn – lời ND)


GNU là tên tắt đệ quy của GNU's Not Unix: thiết kế phần mềm giống Unix nhưng là phần mềm tự do (free software) và không chứa mã Unix.


Tóm tắt lịch sử


Trong khi hiện nay Linux khá phổ biến thì lịch sử của nó lại khá mới. Thời kỳ bình minh của máy tính, các nhà lập trình viết chương trình cho phần cứng bằng ngôn ngữ của phần cứng đó. Do chưa có hệ điều hành nên chỉ một ứng dụng (và một user) có thể dùng một phần cứng lớn và đắt tiền tại một thời điểm. Đến 1950 mới bắt đầu có những hệ điều hành sơ khai.


Trong những năm 60, học viện Công nghệ Massachusetts (MIT) và một số công ty kết hợp xây dựng một hệ điều hành thí nghiệm gọi là Multics (Multiplexed Information and Computing Service) cho máy tính GE-645. Một trong những công ty đó, AT&T, bỏ Multics và xây dựng hệ điều hành riêng của mình vào năm 1970 gọi là hệ Unics. Cùng với Unics, ngôn ngữ lập trình C cũng được phát triển và được dùng để viết hệ điều hành sao cho nó không phụ thuộc vào kiến trúc phần cứng.


Hai mươi năm sau, Andrew Tanenbaum tạo nên một phiên bản vi nhân (microkernel) của Unix dùng để chạy trên các máy tính cá nhân nhỏ gọi là hệ MINIX (minimal UNIX). Đó là hệ điều hành nguồn mở đầu tiên tạo cảm hứng cho Linus Torvalds xây dựng nên Linux vào đầu những năm 90.



Hình 1: Lịch sử các phiên bản nhân Linux


Trục đứng là số dòng lệnh, trục ngang là thời điểm công bố. Phiên bản đầu 0.11 (tháng12/1991) có 10.239 dòng lệnh. Phiên bản 2.6.0 (tháng12/2003) có gần 6 triệu dòng lệnh.


Linux phát triển nhanh từ dự án của một người thành một dự án lập trình toàn cầu gồm hàng nghìn nhà lập trình. Một trong những quyết định quan trọng nhất của Linux là nó chấp nhận tuân theo giấy phép phần mềm nguồn mở GPL (GNU General Public License). Giấy phép đó tránh cho nhân Linux không bị khai thác thương mại và cũng cho phép nó kết hợp được với các ứng dụng của GNU Project.



II.Giới thiệu nhân Linux


Một hệ điều hành GNU/Linux có thể phân thành hai vùng: vùng người dùng (User Space) gồm các thư viện C và các phần mềm ứng dụng (soạn văn bản, …); vùng nhân (Kernel Space) gồm ba thành phần chính như hình 2.




Trên cùng là lớp các ứng dụng của người dùng (User Applications). Bên dưới là lớp các thư viện C (GNU C Library). Lớp thư viện phục vụ cho giao diện các lời gọi hệ thống tạo liên kết giữa các ứng dụng và nhân Linux. Giao diện này quan trọng vì nhân Linux và các ứng dụng chiếm các vùng địa chỉ bộ nhớ được bảo vệ khác nhau. Mỗi ứng dụng có vùng địa chỉ ảo riêng còn nhân có một vùng địa chỉ duy nhất.


Nhân Linux có thể chia thành ba lớp. Trên cùng là giao diện các lời gọi hệ thống thực hiện các chức năng cơ bản như đọc, ghi. Bên dưới là phần mã nhân hệ điều hành (kernel code) hoặc chính xác hơn là mã nhân độc lập với kiến trúc vi xử lý (processor). Các mã lệnh trong lớp này dùng chung cho mọi loại processor mà Linux hỗ trợ. Lớp dưới cùng là các mã lệnh phụ thuộc vào kiến trúc từng loại processor (x86, x86-64, …).



III. Các hệ thống con chính của nhân Linux


Hình 3 dưới đây mô tả các hệ thống con chính của nhân Linux.



Hình 3: Các hệ thống con chính của nhân Linux



III.1Nhân là gì?


Như hình 3, nhân Linux thực ra là bộ quản lý các tài nguyên. Các tài nguyên gồm: các tiến trình (process), bộ nhớ (memory) và thiết bị phần cứng. Nhân Linux quản lý các tài nguyên đó và là người điều hành việc truy cập tài nguyên đồng thời của nhiều user. (User trong bài này được hiểu theo nghĩa rộng bao gồm tất cả những gì có nhu cầu sử dụng tài nguyên hệ thống: các tiến trình, các phần mềm, v.v....)


Updated (8/2009): bản đồ nhân linux có ở đây. Nhấn vào từng mục để xem chi tiết.



III.2Giao diện lời gọi hệ thống (System call interface - SCI)


SCI thực hiện các lời gọi hệ thống từ vùng ứng dụng vào nhân Linux. Giao diện này độc lập với kiến trúc bộ vi xử lý ngay cả trong cùng một họ vi xử lý. SCI có thể thực hiện các dịch vụ gọi hàm dồn kênh và tách kênh. Các gói liên quan được cài trong thư mục ẩn ./linux/kernel và phần độc lập với kiến trúc vi xử lý nằm trong ./linux/arch.



III.3 Quản lý các tiến trình (Process management)


Quản lý tiến trình đảm bảo việc thực hiện các tiến trình. Trong vùng nhân Linux, mỗi tiến trình được gọi là một mạch lệnh (thread) và được thể hiện thành một vi xử lý ảo (gồm mã lệnh, dữ liệu, các ngăn xếp và các thanh ghi của CPU). Trong vùng ứng dụng thì chỉ dùng từ tiến trình mặc dù Linux không phân biệt hai khái niệm này (threads và processes). Nhân cung cấp một giao diện lập trình ứng dụng (API) để: tạo tiến trình mới (fork, exec hoặc các hàm POSIX), ngừng tiến trình (kill, exit) và thông tin, đồng bộ giữa các tiến trình (signal hoặc các cơ cấu POSIX).


Quản lý tiến trình còn dùng để chia sẻ CPU giữa các mạch lệnh đang hoạt động. Nhân thực hiện một thuật toán lập lịch cố định bất kể đến các mạch lệnh đang tranh chấp quyền sử dụng CPU. Lịch này cũng hỗ trợ cả chế độ đa xử lý đối xứng (Symmetric MultiProcessing – SMP). Các gói liên quan được cài trong thư mục ẩn ./linux/kernel và phần độc lập với kiến trúc vi xử lý nằm trong ./linux/arch.



III.4 Quản lý bộ nhớ (Memory management).


Một tài nguyên quan trọng khác mà nhân Linux quản lý là bộ nhớ. Để sử dụng bộ nhớ hiệu quả theo cách mà phần cứng quản lý bộ nhớ ảo, bộ nhớ được chia thành các trang (mỗi trang là 4KB đối với phần lớn loại vi xử lý). Linux có các cơ cấu quản lý lượng bộ nhớ khả dụng và các cơ cấu phần cứng để mapping giữa bộ nhớ vật lý và bộ nhớ ảo.


Việc quản lý bộ nhớ còn làm nhiều hơn là chỉ quản lý các trang 4KB. Linux dùng một sơ đồ định vị lát (slab allocator) lên trên mỗi trang. Sơ đồ này dùng trang 4KB làm cơ sở nhưng tạo một cấu trúc bên trong, theo dõi trang nào đầy, trang nào mới dùng một phần, trang nào còn trống.


Khi nhiều user sử dụng bộ nhớ, dung lượng có thể không đủ. Khi đó các trang nhớ được chuyển sang ổ cứng. Quá trình này được gọi là trao đổi (swapping) giữa bộ nhớ và ổ cứng. Các gói phần mềm liên quan đến quản lý bộ nhớ đặt trong thư mục ./linux/mm.



III.5 Hệ thống file ảo (Virtual file system)


Hệ thống file ảo (VFS) là một khía cạnh hay của nhân Linux, cung cấp một giao diện trừu tượng hoá chung cho hệ thống file. VFS tạo nên một lớp chuyển đổi giữa SCI và các hệ thống file của Linux.



Hình 4: VFS tạo nên một lớp chuyển đổi giữa user và các hệ thống file.


Nằm trên cùng của VFS là lớp các API các chức năng như mở, đóng, đọc, viết file. Dưới cùng của VFS là lớp trừu tượng hệ thống file xác định các chức năng lớp trên thực hiện như thế nào. Đó là các plug-in đối với một hệ thống file cho trước (có trên 50 plug-in như vậy). Các phần mềm liên quan đến VFS nằm trong thư mục ./linux/fs.


Bên dưới lớp file hệ thống là bộ đệm cache (buffer cache) gồm các chức năng chung cho mọi hệ thống file (không phụ thuộc vào một kiểu hệ thống file riêng biệt nào). Lớp cache này tối ưu hoá việc truy cập vào các thiết bị vật lý bằng cách giữ dữ liệu trong một thời gian ngắn (hoặc đọc trước sao cho dữ liệu luôn có khi cần). Dưới bộ đệm cache là các driver thiết bị là giao diện của các thiết bị vật lý cụ thể.



III.6 Các ngăn xếp mạng (Network stack)


Các ngăn xếp mạng được thiết kế theo một kiến trúc lớp mô phỏng theo đúng kiến trúc lớp của các giao thức. Nhắc lại rằng IP là giao thức lớp mạng lõi nằm bên dưới giao thức vận chuyển (thường là TCP). Bên trên TCP là lớp socket được gọi đến qua SCI.


Lớp socket là API chuẩn của hệ thống con network, tạo nên một giao diện cho các giao thức mạng khác nhau. Lớp socket quy định một cách quản lý kết nối và di chuyển dữ liệu chuẩn hoá giữa các điểm đầu cuối. Tài nguyên mạng nằm ở thư mục ./linux/net.



III.7 Các driver thiết bị (Device drivers)


Phần lớn mã nguồn của nhân Linux là các driver để điều khiển các thiết bị phần cứng. Cây thư mục của mã nguồn nhân Linux có một thư mục con driver trong đó có các thư mục con ứng với các thiêt bị khác nhau. Mã nguồn driver nằm ở ./linux/drivers.



III.8 Mã lệnh phụ thuộc kiến trúc vi xử lý (Architecture-dependent code)


Phần lớn Linux độc lập với kiến trúc vi xử lý, nhưng cũng có những bộ phận cần phải theo đúng từng kiến trúc cụ thể để hoạt động được và hiệu quả. Thư mục con ./linux/arch chứa các mã nguồn phụ thuộc kiến trúc đó. Ví dụ với một máy trạm tiêu biểu, thư mục đó là i386,



IV.Các đặc điểm đáng chú ý của nhân Linux


Cùng với thời gian, nhân Linux đã sử dụng bộ nhớ và CPU ngày càng hiệu quả hơn và đặc biệt ổn định. Nhưng khía cạnh thú vị nhất của Linux là tính khả chuyển (portability) mặc dù kích cỡ lớn và độ phức tạp của nó. Linux có thể dịch để chạy trên rất nhiều loại processor và nền tảng phần cứng khác nhau đáp ứng các ràng buộc kiến trúc và nhu cầu khác nhau. Một trong những ví dụ là Linux có thể chạy trên một processor có bộ phận quản lý bộ nhớ hoặc không có bộ phận đó. Cổng uClinux của Linux hỗ trợ việc không có bộ phận quản lý bộ nhớ.


Ngoài tính khả chuyển và hiệu quả, dưới đây là một vài đặc tính đáng chú ý khác của nhân Linux.


Linux, với tư cách là một hệ điều hành nguồn mở, là nơi dùng để test các giao thức mới và những đặc điểm tiên phong của các giao thức đó. Linux hỗ trợ một số lớn giao thức mạng từ TCP/IP cho đến các giao thức mạng cao tốc (trên 1 Gigabit Ethernet – 1GbE – cho đến 10GbE). Linux cũng hỗ trợ các giao thức như SCTP (Stream Control Transmission Protocol) có nhiều đặc tính tiên tiến hơn TCP.


Linux cũng là một kernel động, cho phép thêm bớt các thành phần phần mềm trong khi đang chạy. Các thành phần đó gọi là các module tải động được (dinamically loadable kernel modules) có thể được tải vào bộ nhớ khi boot (khi tìm thấy một phần cứng mới cần đến nó) hoặc tải và rút ra khỏi bộ nhớ bất kỳ lúc nào bởi user.


(Một ổ cứng đã cài Windows trên một máy, khi mang ổ cứng sang máy khác phải cài lại Windows. Ngược lại, một ổ cứng cài Linux có thể mang sang máy khác vẫn chạy tốt. Một ví dụ khác: các hệ Linux cài trên ổ USB boot được có thể cắm vào bất kỳ máy nào để chạy.).


Một đặc tính mới của Linux gần đây là nó có thể dùng làm hệ điều hành cho các hệ điều hành khác (hypervisor). Kernel Linux gần đây đã được bổ xung tính năng máy ảo từ nhân (Kernel-based Virtual Machine – KVM). Tính năng này tạo ra một giao diện mới cho vùng người dùng, cho phép các hệ điều hành khác (Linux hoặc Windows) chạy trên KVM. Yêu cầu duy nhất là processor phải hỗ trợ tập lệnh ảo hoá mới.



V.Tìm hiểu tiếp


Trên đây ta mới chỉ lướt qua các nét chính của nhân Linux. Bạn đọc có nhu cầu nên tìm hiểu thêm chi tiết hơn trong danh sách các tài liệu tham khảo cho dưới đây.


Learn:





  • The GNU site describes the GNU GPL that covers the Linux kernel and most of the useful applications provided with it. Also described is a less restrictive form of the GPL called the Lesser GPL (LGPL).




  • UNIX, MINIX and Linux are covered in Wikipedia, along with a detailed family tree of the operating systems.




  • The GNU C Library, or glibc, is the implementation of the standard C library. It's used in the GNU/Linux operating system, as well as the GNU/Hurd microkernel operating system.




  • uClinux is a port of the Linux kernel that can execute on systems that lack an MMU. This allows the Linux kernel to run on very small embedded platforms, such as the Motorola DragonBall processor used in the PalmPilot Personal Digital Assistants (PDAs).




  • "Kernel command using Linux system calls" (developerWorks, March 2007) covers the SCI, which is an important layer in the Linux kernel, with user-space support from glibc that enables function calls between user space and the kernel.




  • "Inside the Linux scheduler" (developerWorks, June 2006) explores the new O(1) scheduler introduced in Linux 2.6 that is efficient, scales with a large number of processes (threads), and takes advantage of SMP systems.




  • "Access the Linux kernel using the /proc filesystem" (developerWorks, March 2006) looks at the /proc file system, which is a virtual file system that provides a novel way for user-space applications to communicate with the kernel. This article demonstrates /proc, as well as loadable kernel modules.




  • "Server clinic: Put virtual filesystems to work" (developerWorks, April 2003) delves into the VFS layer that allows Linux to support a variety of different file systems through a common interface. This same interface is also used for other types of devices, such as sockets.




  • "Inside the Linux boot process" (developerWorks, May 2006) examines the Linux boot process, which takes care of bringing up a Linux system and is the same basic process whether you're booting from a hard disk, floppy, USB memory stick, or over the network.




  • "Linux initial RAM disk (initrd) overview" (developerWorks, July 2006) inspects the initial RAM disk, which isolates the boot process from the physical medium from which it's booting.




  • "Better networking with SCTP" (developerWorks, February 2006) covers one of the most interesting networking protocols, Stream Control Transmission Protocol, which operates like TCP but adds a number of useful features such as messaging, multi-homing, and multi-streaming. Linux, like BSD, is a great operating system if you're interested in networking protocols.




  • "Anatomy of the Linux slab allocator" (developerWorks, May 2007) covers one of the most interesting aspects of memory management in Linux, the slab allocator. This mechanism originated in SunOS, but it's found a friendly home inside the Linux kernel.




  • "Virtual Linux" (developerWorks, December 2006) shows how Linux can take advantage of processors with virtualization capabilities.




  • "Linux and symmetric multiprocessing" (developerWorks, March 2007) discusses how Linux can also take advantage of processors that offer chip-level multiprocessing.




  • "Discover the Linux Kernel Virtual Machine" (developerWorks, April 2007) covers the recent introduction of virtualization into the kernel, which turns the Linux kernel into a hypervisor for other virtualized operating systems.




  • Check out Tim's book GNU/Linux Application Programming for more information on programming Linux in user space.




  • In the developerWorks Linux zone, find more resources for Linux developers, including Linux tutorials, as well as our readers' favorite Linux articles and tutorials over the last month.




  • Stay current with developerWorks technical events and Webcasts.




Get products and technologies





  • Order the SEK for Linux, a two-DVD set containing the latest IBM trial software for Linux from DB2®, Lotus®, Rational®, Tivoli®, and WebSphere®.




  • With IBM trial software, available for download directly from developerWorks, build your next development project on Linux.




Discuss








1/15/09

CAD trong Mandriva 2009 (update 14/2/09)

Trên blog này đã có hai post nói về các phần mềm vẽ thiết kế CAD trong Kubuntu 7.10 (nhấn vào tag cad để xem). Về cơ bản, các nhận xét trong hai post đó cũng đúng cho Mandriva 2009:

1- Xem bản vẽ CAD (dạng file dwg, dxf,...): có thể dùng VariCAD Viewer miễn phí tải về từ đây. Chương trình này xem file CAD cũng giống như dùng Adobe Reader xem file pdf: chỉ xem, không sửa được. Các chức năng zoom dùng phím Ctrl kết hợp với chuột thì tiện hơn. Nhược điểm: chưa xem được các file 3D phức tạp. Thời gian mở file lâu.

2- Vẽ bản vẽ CAD 2D đơn giản: dùng Qcad nguồn mở miễn phí có sẵn trong kho phần mềm của Mandriva. Nhược điểm: chỉ tương thích với dạng file dxf.

3- Các phần mềm CAD khác: có khá nhiều công ty với nhiều sản phẩm CAD tập hợp trong tổ chức IntelliCAD. Tổ chức IntellịCAD chịu trách nhiệm nghiên cứu xây dựng phần mềm nền tương thích với định dạng file DWG của AutoCAD, các công ty thành viên tự xây dựng và bán sản phẩm của mình trên nền đó.

Tôi đã thử progeCAD 2008 của progeSOFT trên Mandriva 2009. Đây là bản CAD chạy trên Windows, vì vậy trước tiên phải cài wine từ kho phần mềm của Mandriva. Tải file exe của progeCAD tại đây. Sau khi tải về nhấn vào file, quá trình cài đặt sẽ diễn ra hệt như trong Windows. Có vài báo lỗi nhỏ nhưng cứ bỏ qua, chương trình vẫn chạy.

Nhìn sơ bộ, progeCAD có giao diện khá giống AutoCAD. Mở các file DWG 2D và 3D phức tạp khá nhanh và hiển thị tốt. Hỗ trợ các phiên bản DWG từ 2.5 đến 2008. Bản so sánh tính năng xem tại đây, theo bảng này thì xấp xỉ AutoCAD và có cả những tính năng mà AutoCAD không có (ví dụ convert file pdf thành dwg). Đánh giá sâu hơn về tính năng xin dành cho các nhà thiết kế chuyên nghiệp.

Còn một phương án nữa để chạy progeCAD (và các phần mềm Windows nói chung) trên Linux là dùng phần mềm máy ảo. Trước tiên cài phần mềm máy ảo, tiếp theo cài Windows lên máy ảo và cuối cùng cài progeCAD lên Windows. Chi tiết xem thêm tại đây.

Bản progeCAD Professional 2009 trên mạng có giá 400USD (so với AutoCAD 2009 4000USD!). Bản progeCAD Professional 2008 có một công ty Việt nam chào bán với giá 375USD tại đây. Bản 2009 chưa thử cài lên Mandriva.

Đặc biệt, progeSOFT có bản progeCAD 2008 Smart miễn phí dành cho mục đích cá nhân, không thương mại là một công việc từ thiện ủng hộ tổ chức "Bác sỹ không biên giới" để giúp đỡ các nạn nhân chiến tranh tại Dafur, Sudan.

UPDATE (14/2/09): progeCAD chạy khá tốt trên Mandriva, có thể dùng thay AutoCAD cho những bản vẽ thông thường được. Nhược điểm: chưa hiển thị được một số font Windows.

1/9/09

Nén và giải nén trong Mandriva 2009

Trong Linux, nhiều file được đóng gói thành một file sẽ có đuôi file là tar, hai dạng file nén phổ biến nhất là gzbz2. Đóng gói nhiều file rồi nén thì file đó có đuôi là tar.gz, tar.bz2 hoặc tgz, tbz2.

Ngoài ra các dạng file nén khác như 7z, ace, rar, zip cũng được hỗ trợ mặc dù trừ 7z là nguồn mở, các dạng file khác nguồn đóng. Riêng rar chỉ giải nén được mà không nén được.

Muốn biết dạng nào đã được cài, mở Package Manager, kiểm tra xem các file sau đã cài chưa: gzip, bzip2, p7zip, zip, unzip, unrar.Sau khi đã cài các file đó thì chương trình nén và giải nén như Ark (KDE) hoặc File Roller (GNOME) sẽ nén và giải nén được các file tương ứng.

Để tiện hơn, trong Mandriva KDE có thể bổ xung các menu vào service menu của Dolphin như sau (service menu là menu xuất hiện khi nhấn phím phải chuột vào thư mục hoặc file):

  • Vào site này, tải file ExtractAndCompress_v1.4.3.tar.gz về. Giải nén file đó thành thư mục ExtractAndCompress_v1.4.3.

  • Mở Install & Remove Software  xem kdialog đã được cài chưa. Nếu chưa thì chọn cài.

  • Trong Dolphin, mở thư mục trên, nhấn chuột vào file install.sh. Một màn hình xuất hiện cho chọn hoặc là install kiểu local (chỉ cho user hiện tại) hoặc kiểu system wide (cho mọi user, cần có password của root). Tuỳ chọn rồi OK.

  • Đóng Dolphin lại rồi mở ra. Nhấn phím phải chuột vào một thư mục hoặc file định nén, trong menu Compress sẽ có các menu con mới để chọn.


Trên site www.kde-apps.org, search từ "service menu" còn rất nhiều thứ khác có thể cài tương tự như trên.

1/6/09

So sánh công cụ cấu hình của Mandriva và Ubuntu (update 7/1/09)

Một trong những điểm mạnh và hay nhất của Mandriva là các công cụ cấu hình hệ thống nằm trong Mandriva Control Center (MCC). Hầu hết các mục cấu hình trong MCC đều là dạng wizard (hướng dẫn từng bước qua các màn hình). Tối thiểu cũng là giao diện đồ họa, không phải dùng lệnh hoặc sửa trực tiếp vào các file cấu hình. Do đó dễ sửa, dễ làm và không bị nhầm lẫn.

Các mục dưới đây ghi Ubuntu "không có" không có nghĩa là nó không làm được. Nhưng để làm các mục đó trong Ubuntu đầu tiên phải đi tìm hiểu cách làm trên các diễn đàn, sau đó làm bằng tay và nhiều trường hợp phải dùng dòng lệnh, sửa file config khá phức tạp.



CÁC CÔNG CỤ CẤU HÌNH HỆ THỐNG CỦA MANDRIVA 2009 VÀ SO SÁNH VỚI UBUNTU (bản GNOME).

I.Bố trí tập trung


Tất cả các bản Mandriva GNOME, KDE, IceWm đều có hai nơi cấu hình giống nhau:





  • Mandriva Control Center (MCC, tên khác là Configure Your Computer) dùng để cấu hình chung cho hệ thống (chung cho mọi user). Nhập mật khẩu root một lần là vào được.




Trong MCC còn một option rất hay là Display Log. Khi cấu hình, trong màn hình Log sẽ cho biết phần mềm nào chạy, kết quả, lỗi.





  • Configure Your Desktop: thiết lập các cấu hình riêng theo ý thích của từng user.




Ubuntu tập hợp các công cụ cấu hình thành hai nhóm menu: Administration và Preferences.


Dưới đây là các công cụ nằm trong Mandriva Control Center.



II. Quản lý phần mềm (Software Management).


II.1 Quản lý các kho phần mềm (Configure media sources for install and update)


Lần đầu tiên có wizard hướng dẫn khai báo tự động các kho phần mềm trên Internet. Sau đó có màn hình quản lý để Enable, Disable, Add hoặc Remove các kho (kể cả đĩa CD, ổ cứng).


Có option chọn một trong ba chương trình download: curl, wget, aria2.


Các kho trên Internet được tổ chức dưới dạng Mirror list tập trung, không tách thành các địa chỉ kho riêng biệt như Mandriva 2008 hoặc Ubuntu. Chương trình aria2 có thể (trên lý thuyết): chia file thành nhiều phần, tải đồng thời từ nhiều kho; từ một kho, tải nhiều file đồng thời; khi một kho tắc, tự động chuyển sang kho khác; tiếp tục download khi kết nối bị ngắt sau đó nối lại. Tuy nhiên trên thực tế, hiện tại aria2 có vẻ làm việc không tốt bằng wget.


Trên máy chủ của FPT (http://mirror-fpt-telecom.fpt.net/) cũng có thư mục Mandriva nhưng đã lâu không cập nhật, phiên bản trên đó quá cũ.


Ubuntu: khi cài lần đầu sẽ tự nhận các kho dành cho Việt nam. Tổ chức kho theo địa chỉ máy chủ, nhưng có công cụ test để tìm kho nhanh nhất. Không có khả năng chọn chương trình download, do đó không biết có các tính năng như aria2 không.


Ưu điểm lớn nhất là có kho đặt tại Việt nam (vd: của FPT). Do đó tốc độ tải phần mềm rất nhanh.



II.2 Cập nhật phần mềm


Tự tìm kiếm các bản cập nhật phần mềm và thông báo. Cho phép user bình thường được cập nhật phần mềm.


Ubuntu: cũng tự tìm và thông báo có cập nhật nhưng có option cho tự động tải các bản cập nhật về trước (đỡ mất thời gian hơn). Chỉ cho các user thuộc nhóm root có quyền cập nhật.



II.3 Cài và gỡ bỏ phần mềm


Trình quản lý là Rpmdrake. Nhược điểm lớn nhất là chỉ cho tìm phần mềm theo tên, không tìm được theo phần mô tả (Description). Do vậy phải biết tên phần mềm, không tìm được theo tính năng.


Ubuntu: trình quản lý Synaptic có thể tìm theo cả Description (rất hay). Ví dụ muốn tìm phần mềm liên quan đến điện thoại Nokia là sẽ tìm được.



II.4 Trạng thái sử dụng các gói phần mềm đã cài (Package Stats)


Cho biết số ngày không sử dụng đến của từng gói phần mềm đã cài. Do đó, về nguyên tắc có thể gỡ bỏ bớt các gói không dùng đến.


Ubuntu: không có.



III. Cấu hình phần cứng:


III.1 Liệt kê và cấu hình phần cứng (Browser and configure hardware)



Tương tự Device Manager của Windows (xem màn hình trên). Với mỗi phần cứng có hai chức năng: Thiết lập các option của driver (Set current driver options) và Chạy công cụ cấu hình (Run config tool).


Ubuntu: không có.



III.2 Đặt cấu hình âm thanh (Sound Configuration)


Màn hình này cho chọn driver của sound card, đặt các options.


Ubuntu: có ở Preferenes - Sound



III.3 Đặt các hiệu ứng 3D của màn hình (Configure 3D desktop effects)


Lần đầu nhấn vào, sẽ xuất hiện màn hình thông báo thiếu gói mesa-demos, có cài không? Nhấn OK, phần mềm sẽ tự tải về từ Internet và cài. Sau đó xuất hiện màn hình cho chọn các chế độ: không 3D, Metisse, Compiz Fusion.


Trong tất cả các phần cấu hình, nếu thiếu phần mềm nào, Mandriva sẽ tự tải về và cài. Cách cấu hình các hiệu ứng 3D đã trình bày trong post này.


Ubuntu: có compiz fusion cài sẵn nhưng không có một menu nào liên quan và nếu không tìm hướng dẫn ngoài thì không biết cách kích hoạt nó như thế nào.



III.4 Cấu hình card màn hình và màn hình (Setup the graphical server)


Mục này cho chọn loại card màn hình (nếu Mandriva tự chọn không đúng), loại màn hình (với màn hình có tên tuổi), độ phân giải và các option khác. Có chức năng Test thử cấu hình đã chọn.


Ubuntu: chỉ có phần đặt độ phân giải đơn giản trong Preferences (từng user)



III.5 Cấu hình bàn phím (Setup the keyboard layout)


Cho chọn lại loại bàn phím (keyboard type) và kiểu bố trí bàn phím (keyboard layout).


Ubuntu: có nhưng chỉ có một layout USA.



III.6 Cấu hình chuột (Setup the pointer device)


Cho chọn lại kiểu chuột và cấu hình touchpad của notebook.


Ubuntu: có trong Preferences, không thấy có touchpad.



III.7 Cấu hình máy in (Setup the printers)


Mandriva tự nhận và tự cấu hình được khá nhiều loại máy in trực tiếp và máy in trên mạng. Mục này cho phép cài đặt, đặt cấu hình, test máy in.


Ubuntu: có,



III.8 Cấu hình scanner


Cài đặt, cấu hình và test scanner.


Ubuntu: không có.



III.9 Cấu hình máy tính thành máy fax (Configure a fax server).


Nhấn vào đây lần đầu, phần mềm hylafax-server sẽ được tải về cài. Nếu có modem và đường điện thoại, máy tính sẽ thành máy fax.


Ubuntu: không có.



III.10 Cấu hình UPS (Setup a UPS for power monitoring)


Nếu UPS có cáp dữ liệu nối với máy tính, dùng mục này để cấu hình các chức năng theo dõi công suất.


Ubuntu: không có.



IV.Mạng LAN và Internet


IV.1 Cài đặt một kết nối mạng mới


Có hướng dẫn từng bước (wizard) để thiết lập kết nối với mạng LAN, vệ tinh, modem cable, DSL, IDSL, Wireless, GPRS/Edge/3G, mạng quay số qua bluetooth, mạng quay số qua modem cap điện thoại.


Ubuntu: quản lý kết nối bằng network-manager truy cập qua network manager applet. Không quản lý được nhiều loại kết nối như ở trên.



IV.2 Quản lý các kết nối (Network Center)


Theo dõi tình trạng tất cả các kết nối đang hoặc không hoạt động. Thiết lập cấu hình. Ngắt hoặc kết nối lại.


Ubuntu: không có.



IV.3 Cá biệt hóa và an toàn kết nối trong mạng LAN


Gồm các mục:





  • Khai báo proxy của mạng




  • Cho các máy khác dùng chung kết nối Internet của máy.




  • Quản lý các network profile khác nhau (ở cơ quan, ở nhà, ngoài quán,...)




  • Cấu hình kết nối mạng riêng ảo VPN




Ubuntu: không có.

V.Cấu hình hệ thống


V.1 Xác thực để đăng nhập mạng (Authentication)


Hướng dẫn từng bước (wizard) để cấu hình đăng nhập các loại mạng sau:





  • Mạng LDAP




  • Mạng Windows Active Directory




  • Mạng Windows NT




  • Mạng nhóm (NIS)




  • Đăng nhập cục bộ vào máy




Ubuntu: không có.

V.2 Quản lý font, cài, gỡ font và nhập font Windows


Với các hệ Linux khác, chỉ cần copy file font vào thư mục /usr/share/fonts là được. Riêng quá trình cài font của Mandriva có 4 bước, xử lý thế nào đó nên mọi font hiển thị trên màn hình đều đẹp.


Có thể tự tìm và nhập toàn bộ font Windows nếu trên máy có cài Windows.


Ubuntu: không có. Cài thêm font bằng cách copy vào /usr/share/fonts.



V.3 Quản lý các dịch vụ hệ thống


Cho phép enable, disable các dịch vụ hệ thống (system service).


Ubuntu: có.



V.4 Ngôn ngữ hệ thống


Chọn ngôn ngữ, nước và bộ gõ tiếng tương ứng. Với tiếng Việt, cài scim và x-unikey bằng công cụ này (có sẵn x-unikey trong kho phần mềm).


Ubuntu: có. Chỉ cài được scim để gõ tiếng Việt bằng công cụ này.



V.5 Nhập các văn bản và settings của Windows


Nếu trên máy có cài Windows, công cụ này cho phép import từ Windows vào Mandriva (cũng theo hướng dẫn từng bước): user của Windows thành user của Mandriva, các file văn bản, bảng tính, ... từ Windows sang thư mục Home, bookmarks của trình duyệt web, màn hình nền.


Ubuntu: không có. Khi cài đặt có mục nhập user từ các hệ điều hành khác.



V.6 Backup


Có hướng dẫn từng bước backup cái gì, ở đâu, vào đâu, khi nào, ... rất rõ ràng và dễ thực hiện.


Ubuntu: không có.



V.7 Backup toàn bộ hệ thống (Snapshot)


Công cụ này cho phép backup toàn bộ hệ thống (giống Ghost trong Windows).


Ubuntu: không có.



VI.Chia sẻ tài nguyên trong mạng LAN


VI.1 Truy cập các tài nguyên đã share của máy Windows


Công cụ này sẽ tự cài gói samba-client và các gói liên quan để Mandriva truy cập được các tài nguyên đã share của máy Windows (thư mục, file, máy in, ...). Cũng theo hướng dẫn từng bước.


Ubuntu: không có.



VI.2 Chia sẻ các tài nguyên cho các máy khác


Công cụ này hướng dẫn từng bước cài samba-server, biến Mandriva thành máy chủ file, máy chủ in ấn để share các thư mục, file, máy in của Mandriva cho các máy khác trong mạng (Windows, Linux).


Ngoài cách share dùng samba, còn có các công cụ tương tự để truy cập và share theo hệ thống file NFS của Linux và WebDAV (chia sẻ file trên Internet).


Ubuntu: không có.



VII.Quản lý ổ cứng


VII.1 Quản lý các partition của ổ cứng


Công cụ này tương tự Partition Magic của Windows cho phép: resize, create, delete, format partition (kể cả các partition FAT và NTFS); mount, umount partition và đặt các option cho lệnh mount (read-only, read-write, ...).


Ubuntu: không có.



VII.2 Share partition


Dùng share hoặc không share các partion đối với các user khác của cùng máy Mandriva.


Ubuntu: không có.



VII.3 CD/DVD burner


Dùng đặt các option cho việc mount ổ CD/DVD.


Ubuntu: không có.



VIII.Security


VIII.1 Thiết lập mức độ an ninh và kiểm soát của hệ thống


Thiết lập được 5 mức an ninh cho hệ thống tùy theo nhu cầu. Có cảnh báo khi có hiện tượng không và gửi cảnh báo cho địa chỉ email nào.


Có các option rất chi tiết và tương đối dễ hiểu cho an ninh hệ thống, an ninh mạng, chế độ kiểm soát an ninh định kỳ, quyền truy cập vào các thành phần hệ thống.


Kèm theo có công cụ kiểm soát quyền truy cập đến từng thư mục hệ thống.


Ubuntu: không có.



VIII.2 Thiết lập tường lửa cá nhân


Thiết lập tường lửa bằng giao diện đồ họa.


Ubuntu: không có.



VIII.3 Kiểm soát trẻ con truy cập Internet (Parental Control)


Thiết lập các chế độ truy cập Internet khác nhau cho các user khác nhau, quy định giờ được truy cập, lập danh sách các website được và không được truy cập.


Ubuntu: không có.



IX.Kiểm soát quá trình khởi động (Boot)


Sửa đổi boot menu (khi trên máy cài đồng thời nhiều hệ điều hành): thời gian chờ, đặt hệ nào là mặc định, thêm bớt các hệ có thể khởi động bằng boot menu. Thiết lập các dạng màn hình khởi động, chế độ tự động đăng nhập (autologin).


Ubuntu: không có.





1/5/09

Hướng dẫn cài Mandriva 2009 trong mạng LAN.

Tài liệu hướng dẫn cài Mandriva 2009 FREE (dùng được cả cho Mandriva One 2009) trong một mạng LAN dùng Samba + LDAP làm Domain Controller đã có trong kho dữ liệu Mediafire.

Cũng có thể dùng cài máy cá nhân (bỏ các phần liên quan đến LAN đi).

1/4/09

Tình hình sử dụng phần mềm nguồn mở trên thế giới

Tập hợp tất cả các bài viết trên blog này trong Category:" Vấn đề phần mềm nguồn mở" thành một file pdf để phục vụ mục đích "tuyên truyền" và "xoá mù" nhận thức về khả năng ứng dụng phần mềm nguồn mở.

File "Danh sach the gioi dung phan mem nguon mo.pdf" đặt tại kho dữ liệu Mediafire (có link ở góc trên, bên phải màn hình).

1/3/09

Đòn quyết định của Chính phủ về phần mềm nguồn mở.

Kết thúc năm 2008 đầy khó khăn và chào đón năm 2009 đầy bất trắc, Chính phủ đã có một đòn quyết định về phần mềm nguồn mở bằng chỉ thị số  07 /2008/CT-BTTTT ngày 30/12/2008 của bộ Thông tin - Truyền thông với thái độ kiên quyết và chỉ tiêu định lượng rõ ràng:

1- Chỉ thị này liên quan đến việc ứng dụng các phần mềm nguồn mở đã có trong Danh mục các sản phẩm phần mềm mã nguồn mở đáp ứng được yêu cầu sử dụng trong các cơ quan, tổ chức nhà nước (gồm các phần mềm: văn phòng OpenOffice, thư điện tử trên máy trạm Mozilla ThunderBird, trình duyệt web Mozilla FireFox và bộ gõ tiếng Việt Unikey). Danh mục này mở và sẽ còn tiếp tục bổ xung.

2- Chỉ thị bao trùm toàn bộ hệ thống quản lý nhà nước dưới hình thức hơi vòng vo một chút: ".... chỉ thị cho: Các đơn vị chuyên trách về công nghệ thông tin (CNTT) của các Bộ, cơ quan ngang Bộ, cơ quan thuộc Chính phủ (sau đây gọi là Bộ, ngành) và các Sở Thông tin và Truyền thông (Sở TT&TT) của các tỉnh, thành phố trực thuộc Trung ương (sau đây gọi là tỉnh, thành phố). (tất nhiên, bộ TT-TT chỉ có thể ra lệnh cho các đơn vị thuộc ngành dọc)

tuy nhiên yêu cầu cụ thể và định lượng thì bao gồm tất cả hệ thống quản lý nhà nước:

" Chậm nhất đến ngày 31/12/2009, đảm bảo 70% máy trạm trong các cơ quan, đơn vị thuộc Bộ, ngành, tỉnh, thành phố được cài đặt, 70% cán bộ, nhân viên được tập huân, hướng dẫn sử dụng, trong đó tối thiểu 40% cán bộ, nhân viên sử dụng các phần mềm nêu trên trong công việc.

Có kế hoạch để từng bước nâng dần số văn bản, tài liệu, thông tin trao đổi trong các cơ quan, đơn vị thuộc Bộ, ngành, tỉnh, thành phố được soạn thảo, xử lý bằng các phần mềm nêu trên; đảm bảo đến ngày 31/12/2010 hầu hết cán bộ, nhân viên trong các cơ quan, đơn vị thuộc Bộ, ngành, tỉnh, thành phố sử dụng các phần mềm nêu trên trong công việc."

Chỉ thị này có lẽ là chỉ thị thứ hai của Chính phủ dưới thời Thủ tướng Nguyễn Tấn Dũng (sau chỉ thị về đội mũ bảo hiểm) có tính cách đột phá, phạm vi rộng. Có đạt được hiệu quả như việc đội mũ bảo hiểm không thì còn phải chờ hồi sau sẽ rõ. Tuy nhiên, có mấy điểm thấy ngay:

1- Giọng điệu kiên quyết, rõ ràng, có chỉ tiêu định lượng, có thời hạn hoàn thành, có cá nhân chịu trách nhiệm.
Chỉ thị này không đột ngột. Nó là một cột mốc của một quá trình bắt đầu từ:

  • Quyết định số 235/2004/QĐ-TTg ngày 02 tháng 3 năm 2004 của Thủ tướng Chính phủ phê duyệt Dự án tổng thể về Ứng dụng và phát triển phần mềm nguồn mở ở Việt Nam giai đoạn 2004-2008,

  • Quyết định số 169/2006/QĐ-TTg quy định phải " Ưu tiên đầu tư, mua sắm sử dụng các sản phẩm phần mềm mã nguồn mở",

  • Quyết định số 08/2007 của Bộ TT-TT ban hành ngày 24/12/2007, những cơ quan, tổ chức khi sử dụng vốn ngân sách nhà nước hoặc vốn có nguồn gốc từ ngân sách nhà nước sẽ phải ưu tiên ứng dụng các sản phẩm phần mềm nguồn mở

  • và một quy định sắp ban hành của bộ TT-TT yêu cầu phải dành tối thiểu 10% ngân sách IT cho phần mềm nguồn mở.


2- Việc lựa chọn 4 phần mềm nói trên là đúng và khôn khéo, đảm bảo thành công, đặc biệt là OpenOffice. Những ai đã từng dùng OpenOffice đều thấy rằng trong lĩnh vực quản lý nhà nước (chủ yếu là soạn văn bản, bảng tính đơn giản) thì mang tiền đi mua Microsoft Office là một việc làm lãng phí và vô trách nhiệm đến chừng nào. Thà mua Windows nghe còn có lý hơn, mặc dù trong hệ thống hành chính văn phòng, dùng Windows cũng là lãng phí.

3- Trong năm 2008, các hoạt động bảo vệ bản quyền tại Việt nam diễn ra khá nhộn nhịp. Hoạt động thanh tra bản quyền diễn ra suôt năm với nhịp độ chưa từng có, lần đầu tiên các cơ quan chính phủ ký hợp tác bảo vệ bản quyền với BSA, tổ chức chuyên về bảo vệ bản quyền nước ngoài, Chủ tịch Ủy ban Tài chính Thượng viện Mỹ thăm Việt nam cũng bày tỏ quan ngại về vi phạm bản quyền,...Tính "tự giác" của chúng ta tôn trọng các cam kết quốc tế lúc gia nhập WTO cộng với sức ép bên ngoài có lẽ là một trong những nguyên nhân ra đời chỉ thị này. Chủ trương này giúp chúng ta có thế mạnh "đối trọng" để thương thuyết trong những phi vụ mua bản quyền phần mềm, không để cho bất cứ nhà cung cấp độc quyền nào áp đặt.

Trước đây, với hệ thống Viễn thông - Internet, Việt nam đã là một trong những nước đi đầu trên thế giới tiến vào công nghệ mũi nhọn mà kết quả thì ngày nay chị quét rác cũng có mobile phone, Internet lan khắp hang cùng ngõ hẻm.

Trong lĩnh vực Công nghệ Thông tin, Đảng là người đi đầu trong việc ứng dụng phần mềm nguồn mở với chủ trương dùng Linux trên cả máy trạm và máy chủ. Với chỉ thị này, sau Hà lan có lẽ Việt nam là nước thứ hai quyết định dùng phần mềm nguồn mở trong hệ thống quản lý nhà nước.

Chúng ta có quyền tự hào về điều đó!

Khi mà ứng dụng Công nghệ Thông tin còn yếu, chuyển sang dùng phần mềm nguồn mở càng sớm càng tốt, tránh được những hậu quả phải khắc phục khi căn bệnh "nghiện Windows" đã tràn lan. Chung sống hài hoà giữa phần mềm nguồn mở và nguồn đóng, sử dụng chúng một cách hợp lý, tiết kiệm là chủ trương đúng đắn nhất hiện nay.

Bước tiếp theo rất nên làm và hoàn toàn khả thi là dùng Linux trong toàn bộ hệ thống quản lý nhà nước (phối hợp với một hàm lượng nhỏ Windows trong thời kỳ chuyển tiếp).

Đối với các cán bộ triển khai, các fan của phần mềm nguồn mở, chỉ thị này đúng là cây gậy họ đang cần. Cám ơn Mr. Lê Doãn Hợp!

Ở trên toàn là mầu hồng, pha thêm tý xám vào cho nó cân bằng:

1- Bắt dân đội mũ bảo hiểm thì dễ, bắt chính đội ngũ công chức của mình tuân theo một chủ trương thống nhất, thay đổi thói quen thì ??? Liệu bộ TT-TT có thể "chỉ thị" cho các bộ, ngành, tỉnh, thành phố khác không? Đây là chủ trương chung của Chính phủ hay sáng kiến riêng của bộ TT-TT?


2- Trích: " d) Các doanh nghiệp phần mềm, các doanh nghiệp cung cấp dịch vụ CNTT: Nâng cao năng lực cung cấp dịch vụ phần mềm nói chung và PMNM nói riêng cho các cơ quan nhà nước theo hướng coi phần mềm như là dịch vụ (SaaS)". Tay chuyên viên nào chấp bút đoạn này chắc không hiểu điều mình viết!

3- Có ý kiến nói unikey không thực sự mở?