Lớp Linux Kernel • Thực hiện các tác vụ ở tầng dưới cùng của hệ điều hành • Tạo lớp giao tiếp ảo với các tầng trên • Chức năng cơ bản là bảo mật, giao tiếp phần cứng, quản lý bộ nhớ, quả
Trang 3TỔNG QUAN VỀ HỆ ĐIỀU
HÀNH
1.2 Chức năng của hệ điều hành
• Phân chia thời gian xử lý và định thời CPU
• Phối hợp và động bộ hoạt động giữa các process (coordination & synchronization)
• Quản lý tài nguyên hệ thống (thiết bị I/O, bộ nhớ, file chưa dữ liệu,
…)
• Thực hiện và kiểm soát access control, protection.
• Duy trì sự nhất quán (integrity) của hệ thống, kiểm soát lỗi và phục hồi hệ thống khi có lỗi (error recovery)
• Cung cấp giao diện làm việc cho users.
Trang 5TỔNG QUAN VỀ HỆ ĐIỀU HÀNH
1.3 Các hệ điều hành phổ biến
Trang 6Tổng quan về điều hành Android
2.1 Giới thiệu về hệ điều hành Android
• Android là một hệ điều hành chạy trên điện thoại di động,
được phát triển trên nhân Linux 2.6 dành cho các dòng điện
thoại cảm ứng (smart phone) Hiện nay, hệ điều hành Android
do tập đoàn Google sở hữu.
• Android là hệ điều hành rất mạnh, áp dụng công nghệ cao, có tính bảo mật cao, hỗ trợ được nhiều công nghệ tiên tiến như GPS, 3G, EDGE, Wifi…
• Hệ điều hành Android tương thích với nhiều phần cứng, hỗ trợ thiết bị nhập dữ liệu như Keyboard, touch và trackball…
Trang 7Tổng quan về điều hành Android
2.2 Lịch sử phát triển
• Hệ điều hành Android được xây dựng bởi tổng công ty
Android, với sự hỗ trợ tài chính từ tập đoàn Google Sau đó
được chính Google mua lại vào năm 2005, với số tiền được dư đoán khoản 50triệu USD
• Ít ai biết, tiền thân của Android là một startup ít tên tuổi, ở
Ban California, Mỹ
• Lịch sử phát triển của Android sẽ được tìm hiểu sâu hơn, ở
phần 5
Trang 8CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
Trang 9CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1 Cấu trúc
Trang 10CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.1 Lớp Linux Kernel
Lớp dưới cùng là “nhân” Linux kernel (phiên bản Linux 2.6) với khoảng 115 bản và cung cấp các chức năng cơ bản như theo dõi luồng tiến trình và quản lý bộ nhớ cũng như bảo mật
Trang 11CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.1 Lớp Linux Kernel
• Thực hiện các tác vụ ở tầng dưới cùng của hệ điều hành
• Tạo lớp giao tiếp ảo với các tầng trên
• Chức năng cơ bản là bảo mật, giao tiếp phần cứng, quản lý
bộ nhớ, quản lý tiến trình
Trang 12CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.2 Lớp Libraries và Runtime
Phía trên lớp Linux kernel là bộ thư viện (librabries) Trong đó hai thành phần quan trọng là bionic (Google libc) và Dalvik Libc hỗ trợ đa phương tiện (âm thanh và hình ảnh, đồ họa và
cơ sở dữ liệu với dung lượng nhỏ) Đây là kho để lưu trữ và chia sẻ dữ liệu ứng dụng
Trang 13CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.2 Lớp Libraries và Runtime
Trang 14CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.2 Lớp Libraries và Runtime
3.1.2.1 Phần Lybrary: chứa một tập hợp các thư
viện được viết từ ngôn ngữ C/C++ để cung cấp cho các thành phần khác của android
Android cung cấp một số các APIs cho phát triển ứng dụng Bao gồm các thiết bị sau: Android.util,
android.os, android.graphics, android.text,
android.database….
Phần này được new rõ hơn trong bản Word đi kèm.
Trang 15CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.2 Lớp Libraries và Runtime
3.1.2.1 Phần Android runtime:
• Android có một tập các thư viện nòng cốt để cung cấp hầu hết các chức năng sẵn có trong thư viện cốt lõi của ngôn ngữ lập trình Java Android Runtime: Bao gồm máy ảo Dalvik
và các thư viện Android
Trang 16CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
Trang 17CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.2 Lớp Libraries và Runtime
3.1.2.1 Phần Android runtime:
• Máy ảo Dalvik: Dalvik là máy ảo để chạy các ứng dụng trên Android, đã được tối ưu để đảm bảo rằng một thiết bị có thể chạy được nhiều Instance một cách hiệu quả Nó dựa vào
nhân Linux để thực hiện đa luồng và quản lý bộ nhớ cấp thấp
Trang 18CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.3 khung tổ chức ứng dụng – Applications Framework
• Kế tiếp là lớp khung tổ chức ứng dụng (Applications
Framework) chứa nhiều dịch vụ ở cấp độ cao hơn dành cho các ứng dụng hình thành từ các lớp Java
• Nhiệm vụ quan trọng của lớp này là chia sẻ hàm Mỗi ứng dụng có thể xuất hàm nào đó để dùng cho những ứng dụng khác trong hệ thống, nhờ đó mà các phần mềm có thể được
sử dụng lại và thân thiện với người dùng hơn Cung cấp một nền tảng mở và mạnh mẽ để phát triển ứng dụng Java Có khả năng tái sử dụng và tùy biến cao
Trang 19CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.3 khung tổ chức ứng dụng – Applications Framework
Những dịch vụ sau là những dịch vụ kiến trúc cơ bản nhất của tất cả các ứng dụng,
cung cấp một framework cho mọi mọi phần mềm được xây dựng:
Actitvity Manager: Điều khiển vòng đời của các Activity bao gồm cả quản lý các tầng Activity
Views: Được sử dụng để tạo lập các giao diện người dùng cho các Activity
Trang 20CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.3 khung tổ chức ứng dụng – Applications Framework
• Notification Mamager: Cung cấp một cơ chế cố định và quy củ cho việc gửi các thông báo đến người dùng.
• Content Provider: Cho phép ứng dụng chia sẻ dữ liệu giữa các ứng dụng.
• Resource Manager: Hỗ trợ các thành phần không thuộc mã nguồn như là chuỗi
ký tự, đồ họa được đặt bên ngoài.
Trang 21CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.3 Khung ứng dụng - Application
Lớp phía trên cùng là lớp ứng dụng (Applications) Một số
thành phần của lớp này được chuẩn hóa và mỗi ứng dụng đều
có một số hàm dùng cho các ứng dụng khác Ví dụ, một thông điệp gửi qua ứng dụng SMS cũng có thể được dùng cho ứng dụng khác để gửi tin nhắn
Trang 22CẤU TRÚC VÀ CHỨC NĂNG
CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
3.1.3 Khung ứng dụng - Application
• Là hệ thống phần mềm ứng dụng chạy trên Android
• Viết bằng Java, chạy trên máy ảo Dalvik Virtual Machine
• Có thể chạy nền (background) hoặc tích cực (activity)
• Một số có sẵn để thực hiện các chức năng cơ bản của điện thoại, số khác
có thể cài đặt thêm.
• Các ứng dụng Android thông thường sẽ được triển khai trên Java thông qua máy ảo Dalvik
Trang 23CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
• Hệ điều hành Android cung cấp cho người dùng những tiện tính trong việc quản lý thông tin cá nhân, giải trí, đàm thoại,
và cung cấp tốt giao diện cho các thiết bị thông minh Hỗ trợ Camera, Keyboard…
• Sau đây là các chức năng chính, và thiết yếu mà mỗi thiết bị dùng Android sẽ có
Trang 24CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.1 Laucher
Thuật ngữ chỉ các thức quản lý màn hình chính của thiết bị nó bao gồm các Widget (ứng dụng nhỏ có chức năng riêng biệt) nút truy cập vào danh sách các ứng dụng đã cài đặt, biểu
tượng shortcut cho các ứng dụng, thông tin của hệ thống
Trang 25CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.1 Laucher
• Android là hệ điều hành mã
nguồn mở, chính vì vậy ngoài
Launcher của nhà sản xuất
Trang 26CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.2 App Drawer
App Drawer là một bộ
phận gắn liền với Launcher,
do đó mỗi Launcher sẽ có
một App Drawer mang
phong cách của riêng mình
Trang 27CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.3 App Drawer
• Với những Launcher mặc định
hoặc OEM Launcher, chúng ta
không thể tùy biến nhiều với
App Drawer Với những
Trang 28CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.3 Thanh trạng thái
• Thanh thông báo trạng thái là đối tượng phía trên cùng của
màn hình, nơi đặt các biểu tượng pin, đồng hồ
• Chức năng của thanh trạng thái là hiện thị những thông báo mà các ứng dụng muốn thông báo đến người dùng – hiển thị ở
phần bên trái của thanh trạng thái
• Phần bên phải của thanh trạng thái được dùng để hiện giờ,
dung lượng pin còn lại, kết nối mạng Wifi, mạng di động,
Bluetooth
Trang 29CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.3 Thanh trạng thái
Trang 30CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
thực hiện những chức năng của
riêng nó, không phụ thuộc vào
ứng dụng nào Widget chỉ mới
xuất hiện trên thiết bị di động
trong những năm gần đây.
Trang 31CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.4 Widget
• Widget trong Android rất đa dạng,
bao gồm widget có sẵn và widget
chúng ta cài thêm Các widget có sẵn
thường là những widget đi kèm theo
Launcher Bản thân Android cũng
được Google trang bị sẵn một số
widget hữu dụng nhưng đối với người
dùng thì những Widget này vẫn không
đủ.
• Hiện nay với sự hỗ trợ của màn hình
cảm ứng (Touch screen), việc sử dụng
Widget càng thêm dễ dàng, tiện lợi
hơn.
Trang 32CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.4 Widget
Trang 33CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.4 Lock Sreen
• Lock Screen là một thành phần
thuộc hệ thống của Android Lock
Screen là nơi mà bạn cần kéo thanh
trượt (hoặc các động tác tương tự)
để mở khóa máy và bắt đầu sử dụng
• Tại Lock Screen, thông tin về ngày
tháng, giờ, báo thức,… sẽ được hiển
thị Một số Lock Screen của nhà sản
xuất thiết kế còn có thể hiển thị tin
nhắn hay cuộc gọi nhỡ, phím điều
khiển việc chơi nhạc…
Trang 34CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.5 Ứng dụng và Market
• Một trong những yếu tố làm nên sự thành công của Android
là những ứng dụng bổ ích và đa phần miễn phí được phát
triển cho hệ điều hành này
• Ứng dụng trên Android có thể được viết bằng Java,
Objective-C và một số ngôn ngữ khác trên bộ SDK (Software Development Kit) được Google phát hành
Trang 35CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
4.5 Ứng dụng và Market
• Market là “chợ” ứng dụng dành cho Android Những lập trình viên sau khi viết xong chương trình của mình, qua một loạt giai đoạn đăng kí, kiểm duyệt, ứng dụng của họ sẽ đến với
mọi người thông qua kênh phân phối Market Trên Market có hai loại ứng dụng, đó là thu phí và miễn phí
• Ứng dụng miễn phí được phân phối tới mọi quốc gia, trong khi những ứng dụng có thu phí chỉ xuất hiện tại một số vùng nhất định trên thế giới Số ứng dụng hiện có trên Android rất lớn và ngày càng tăng
Trang 36CHỨC NĂNG CHÍNH CỦA HỆ ĐIỀU HÀNH ANDROID
Trang 37NHỮNG CẢI TIẾN CỦA ANDROID
5.1 Quá trình phát triển
Những phiên bản đầu tiên
• Những phiên bản đầu tiên cho thấy chiến lược và định hình tính năng của hệ điểu hanh Android, qua đó ta sẽ dễ dàng nhận thấy những điểm cải tiến ở bản Android mới nhất, so với các bản còn lại
Trang 38NHỮNG CẢI TIẾN CỦA ANDROID
5.1 Quá trình phát triển
5.1.1 Android 1.0
• Thanh thông báo kéo từ trên xuống: Tất cả thông bao được tập hợp trong một danh sách duy nhất Tiện lợi cho người sử dụng để quản lý cá nhân như gọi nhỡ, tin nhắn, cuộc gọi, các phần mềm đang chạy…
• Thanh trạng thái tích hợp đồng hồ, biểu tượng pin, các biểu tượng kết nối, giúp tiết kiệm tối đa không gian nhưng vẫn hiển thị đầy đủ thông tin cho người dùng.
• Màn hình chính: Có độ tùy biến cao, phong phú, có thể hay đổi nền, thậm chí thay đổi các màn hình chính Hệ thống Widget ở bản 1.0 còn hạn chế.
• Tích hợp chặt chẽ với Gmail
Trang 39NHỮNG CẢI TIẾN CỦA ANDROID
5.1 Quá trình phát triển
5.1.2 Android 1.1
• Sửa khá nhiều lỗi của bản 1.0
• khả nang nâng cấp thiết bị di dộng qua phương pháp The-Air
Trang 40Over-NHỮNG CẢI TIẾN CỦA ANDROID
5.1 Quá trình phát triển
5.1.3 Android 1.5
• Vai trò cực kì quan trọng đối với sự trưởng thành của Android
• Giao diện: không có những cải tiến mạnh: Widget tim kiếm có
độ mờ, app Drawer có hoa văn nhỏ… đây không pải là điểm nhấn của phiên bản 1.5
• Bàn phím ảo xuất hiện là một bước tiến quan trọng
Trang 41NHỮNG CẢI TIẾN CỦA ANDROID
Trang 42NHỮNG CẢI TIẾN CỦA ANDROID
5.1 Quá trình phát triển
5.1.4 Các bản Android 2.x
• Hỗ trợ nhiều tài khoản người dùng
• Quick Contact: Khi người dùng chạm vào 1 địa chỉ nào đó, sẽ
có một menu nhỏ chứa các thao thác nhanh như gửi Email, gửi tin nhắn, thực hiện cuộc gọi…
• Cải tiến bàn phím ảo, cải tiến giao diện
• 2 thanh chặn khi chọn văn bản
Trang 43NHỮNG CẢI TIẾN CỦA ANDROID
5.1 Quá trình phát triển
5.1.5 Các phiên bản Android 3.x, 4.1 và 4.2
• Loai bỏ nút nhấn vật lý
• Cải thiện chức năng đa nhiệm
• Bổ sung Action Bar
• Chức năng trượt thông minh: Trượt sang phải để mở khóa, sang trái để chạy ứng dụng, trượt lên để bật Camera, và
hoàn toàn có thể thay đổi cài đặt để có thể “trượt” theo ý muốn của người dùng
Trang 44NHỮNG CẢI TIẾN CỦA ANDROID
5.2 Những cải tiến so với các bản trước
5.2.1 Material Design
• Đây là một kiểu thiết kế mới hoàn toàn được Google áp dụng không chỉ cho Android 5.0 mà còn cho cả các ứng dụng
và trang web của hãng
• Material Design sử dụng nhiều thành phần giao diện đậm
nét, nhiều màu sắc và có độ phản hồi cao
Trang 45NHỮNG CẢI TIẾN CỦA ANDROID
5.2 Những cải tiến so với các bản trước
5.2.1 Material Design
Việc sử dụng nhiều hình ảnh cộng với
khoảng cách giữa các đối tượng đồ họa
rộng rãi hứa hẹn giúp chúng ta thao tác
trên Android 5.0 một cách dễ dàng hơn
bao giờ hết
Trang 46NHỮNG CẢI TIẾN CỦA ANDROID
5.2 Những cải tiến so với các bản trước
5.2.2 Thanh trạng thái đổi màu
theo ứng dụng
• Đối với những app nào đã được thiết kế
tối ưu theo Material Design thì thanh
thông báo của Android sẽ tự động đổi
cùng màu với app Ví dụ, với Gmail thì
thanh trạng thái đổi màu đỏ, trong app
gọi điện thì chuyển màu xanh, trong Play
Store thì chuyển sang màu xám
Trang 47NHỮNG CẢI TIẾN CỦA ANDROID
5.2 Những cải tiến so với các bản trước
5.2.2 Thanh trạng thái đổi màu
theo ứng dụng
Trang 48NHỮNG CẢI TIẾN CỦA ANDROID
5.2 Những cải tiến so với các bản trước
5.2.3 Thông báo mới
Trước đây mọi thông báo đều được hiển thị
bên trong Notification Center của hệ điều
hành, giờ đây nó còn được hiển thị ngoài
màn hình khóa nữa Điều này giúp ích rất
nhiều khi bạn cần xem nhanh các thông
báo trên máy, lúc đó chỉ việc xem liếc qua
lockscreen là xong chứ không cần phải với
tay kéo thanh thông báo xuống, trong khi
nội dung lại đầy đủ hơn.
Trang 49NHỮNG CẢI TIẾN CỦA ANDROID
5.2 Những cải tiến so với các bản trước
5.2.3 Thông báo mới
Bên cạnh đó Android Lollipop còn hỗ trợ
chế độ mới mang tên Priority Một khi chế
độ này được kích hoạt (thông qua nút
volume, nhấn vào chữ “Priority”), chỉ thông
báo từ các app hoặc cuộc gọi, tin nhắn từ
những bạn bè nhất định mới được hệ
thống hiển thị lên, từ đó giảm đi sự phân
tâm trong suốt quá trình sử dụng thiết bị.
Trang 50NHỮNG CẢI TIẾN CỦA ANDROID
5.2 Những cải tiến so với các bản trước
5.2.4 Cải thiện khu vực chạy đa
nhiệm
• Các app nằm chồng lên nhau như hình
• Có một điểm mà các bạn cần lưu ý, đó
là khu vực chạy đa nhiệm giờ đây
không chỉ liệt kê các app mà còn bao
gồm luôn cả những thẻ duyệt web
đang mở bằng Chrome
Trang 51NHỮNG CẢI TIẾN CỦA ANDROID
5.2 Những cải tiến so với các bản trước
5.2.5 Cải thiện về pin
• Một chế độ mới cho phép kéo dài thời lượng sử dụng pin
thêm tối đa 90 phút Nó mang tên Battery Saver và có thể
được kích hoạt thông qua mục “Battery” trong trình cài đặt Khi gắm sạc, Android 5.0 sẽ hiển thị thời gian còn lại cho đến khi sạc đầy thiết bị
• Có thêm khả năng hiển thị thời gian sử dụng ước tính còn lại
Trang 52NHỮNG CẢI TIẾN CỦA ANDROID
5.3 Những cải tiến mới nhất ở Android M
1 Quyền truy cập ứng dụng
2 Xác thực bằng vân tay
3 Trãi nghiệm web ngay trên ứng dụng với tab Chrome tùy biến
4 Thanh toán di động với Android Pay
5 Liên kết các ứng dụng
6 Quản lý chức năng sạc và pin