Android toàn tập - Bài 4: Kernel

hdvn-Kernel.png

[just]Đối với những người đam mê hoặc là tín đồ của Android thì bạn sẽ bắt gặp khái niệm này.

Nói chính xác thì Kernel chính là nhân của hệ điều hành Android, nó chỉ dành riêng cho Android. Những hệ điều hành khác cũng có nhân của riêng nó, iOS, MacOS hay Windows. BlackBerry cũng có một kernel của riêng nó. Nhưng trong khuôn khổ bài viết này, chúng tôi chỉ đề cập tới nhân của những thiết bị xử dụng hệ điều hành Android.

Android là hệ điều hành sử dụng nhân Linux, nhưng không phải chính là nhân để chạy hệ điều hành Linux của các thiết bị chạy Linux. Có rất nhiều mã lập trình của Android sử dụng rất riêng so với hệ thống Linux, ví dụ như kernel của Google’s Android sử dụng có chế độ làm việc riêng của nó. Hệ thống lập trình OEMs là ngôn ngữ chủ đạo để viết nên hệ thống cho Kernel, bởi vì nó là phương tiện dùng để lập trình các hệ thống driver cho các phần cứng khác cho các phiên bản khác nhau của Android Kernel. Điều quan trọng của Kernel là kiểm soát và điều khiển phần cứng, hiểu một cách đơn giản, Kernel chính là một mối nối và là “thông dịch viên” giữa phần cứng và phần mềm.
Khi phần mềm cần phần cứng làm một việc gì đó, nó sẽ gửi yêu cần tới bộ vi xử lý và nó sẽ nói “các bạn nói bất cứ cái gì, chúng tôi sẽ đáp ứng cái đó”. Từ trình điều khiển độ sáng màn hình, mức âm lượng, hiệu suất tốc độ của thiết bị, điều khiển xung nhịp CPU. Ngay cả việc bạn di chuyển con trỏ chuột hay ngón tay của bạn lướt trên màn hình cảm ứng… tất cả đều được kiểm soát bởi kernel.

03-kernel.pio.gif

Thử ví dụ một việc điển hình: bạn nhấp vào nút “Search” trên smartphone của bạn để gọi ứng dụng tìm kiếm ra. Làm cách nào mà smartphone hiểu được rằng bạn đã nhấp vào nút “Search” đó? Khi tay bạn chạm vào màn hình cảm ứng của smartphone chính là bạn đã chạm vào một tọa độ đã được định vị sẵn của smartphone. Một phần mềm hệ thống sẽ kiểm soát toàn bộ những tọa độ có trên màn hình đã được mã hóa thành những tọa độ, phần mềm đó biết rằng hộp “Search” cư ngụ tại địa chỉ nào. Và khi tọa độ định vị của nút Tìm kiếm đó được “chạm phải”, khi đó phần mềm hệ thống sẽ nhận thông tin được mã hóa ghi nhận lại và chuyển cho Kernel xử lý tín hiệu vừa nhận được. Tại Kernel, lệnh vừa nhận được sẽ được xử lý và chuyển ngay đế những nơi có nhiệm vụ thực thi lệnh đó và sẽ được “chấp hành” tại đó.

Đôi khi hệ thống và Kernel không chỉ nhận được những thông tin từ những những dòng lệnh được đưa vào từ màn hình cảm ứng, nó cũng có thể nhận tín hiệu từ một thiết bị khác bằng cách này hay cách khác, Bluetooth chẳng hạn.

Nghe có vẻ phức tạp, nhưng logic của máy tính luôn luôn đi theo một hướng đã được định sẵn: một hành động sẽ tạo ra một hiệu quả, không lộn xộn. Nếu không có Kernel thì bạn chả làm ăn gì được kể cả với smartphone. Không có “người” nhận lệnh, xử lý lệnh, thực thi và kiểm soát những nơi thực thi lệnh đó. Tất cả phần mềm và phần cứng của chiếc smartphone trị giá bạc triệu cũng chả có ý nghĩa gì. Tuy nhiên, để Kernel hiểu được và nhận diện được các phần cứng khác nhau, các nhà sản xuất phải cho Kernel “học” bằng một phần mềm mà chúng ta vẫn hay gọi là “driver”. Với Android Kernel, tất cả những kết nối đều thông qua một hệ thống ngôn ngữ lập trình API và OEM, các nhà phát triển cũng dựa vào hệ thống này mà viết nên những hệ thống driver của họ.

Có một số nhà phát triển hệ thống cho Kernel như: Abyss kernel, FM kernel, Speedmod kernel, Franco kernel, Cfoot kernel.

Để xem lại các bài trước, bạn vui lòng bấm vào bài 1, bài 2bài 3[/just]

Theo AndroidCentral
 
Chỉnh sửa lần cuối:

sissisdm

Member
Ðề: Android toàn tập - Bài 4: Kernel

Xin phép bác bumble-bee cho em sao chép nguyên bản qua trang tinhte.vn nha!
Em sẽ ghi rỏ nguồn gốc của bài viết! Em xin cảm ơn bác trước nhé!
 

baminh

Member
Ðề: Android toàn tập - Bài 4: Kernel

bài viết rắc rối mà tóm lại có mấy chữ à
 

trungled

New Member
Ðề: Android toàn tập - Bài 4: Kernel

bài viết rắc rối mà tóm lại có mấy chữ à
Thì người viết cũng chỉ muốn chúng ta hiểu rõ hơn bản chất của Kernel là gì thui, viết ngắn gọn quá thì người đọc lại không hiểu sâu về vấn đề !!! :)
 

star_hd

Member
Ðề: Android toàn tập - Bài 4: Kernel

E nghĩ cái này thì đọc một số tài liệu về Linux sẽ rõ!
Bác viết ngắn gọn quá! Tuy vẫn hình dung ra vai trò của Kernel nhưng với 1 số người đọc xong sẽ ngáp 1 cái!I-)
Ah em thấy Linux giờ có nhân 3.0 rồi mà sao google ko nâng cấp cho 1 số bản Androi nhỉ?
 
Bên trên