Hệ điều hành di động là trung tâm của mọi hoạt động trênthiết bị di động và cho phép người dùng tương tác với ứng dụng và dữ liệu trên thiếtbị.Hệ điều hành di động cung cấp một giao diện
GIỚI THIỆU CHUNG
Đặt vấn đề
Thiết bị di động hiện nay là công nghệ phổ biến nhất, với "smartphone" trở thành tâm điểm toàn cầu trong những năm gần đây Các thiết bị như điện thoại di động, điện thoại thông minh và máy tính bảng xuất hiện ở khắp nơi, đáp ứng nhu cầu ngày càng tăng của người dùng Để cạnh tranh, các tập đoàn công nghệ và hàng trăm thương hiệu lớn đã cho ra mắt nhiều hệ điều hành khác nhau, mang đến những tính năng mới lạ Sự cạnh tranh này đã tạo nên một thị trường di động sôi động và đa dạng.
Thiết bị di động ngày càng được ưa chuộng nhờ vào những tiện ích đa dạng mà chúng mang lại Ban đầu, chúng chỉ phục vụ nhu cầu liên lạc từ xa, nhưng với sự phát triển công nghệ, các tính năng đã được mở rộng đáng kể Ngoài việc nghe gọi và xem lịch, người dùng còn có thể kết nối internet, cập nhật tin tức và theo kịp xu hướng công nghệ Hệ điều hành di động đóng vai trò quan trọng trong việc điều khiển và phát triển những tính năng này, giúp người dùng dễ dàng sử dụng thiết bị của mình.
Mặc dù laptop hiện nay rất di động, hệ điều hành của chúng vẫn không được xem là hệ điều hành di động, vì chúng được thiết kế cho máy tính để bàn mà không cần các tính năng di động cụ thể Ranh giới giữa điện thoại di động và các thiết bị khác đang ngày càng mờ nhạt, nhờ vào sự phát triển của các thiết bị mới ngày càng nhỏ gọn và linh hoạt hơn so với phần cứng trước đây.
Đóng góp của bài tập lớn
Bài tập lớn này sẽ trình bày khái niệm và giới thiệu về hệ điều hành di động, đồng thời khám phá cách thức tổ chức và hoạt động của nó dựa trên nguyên lý đã được xây dựng sẵn.
Bố cục bài tập lớn
Phần còn lại của báo cáo bài tập lớn này được tổ chức như sau.
Chương 2 giới thiệu tổng quan về hệ điều hành di động, bao gồm khái niệm, lịch sử ra đời Bên cạnh đó, chương 2 giúp chúng ta hiểu biết về những hệ điều hành
Học viện Công nghệ Bưu chính Viễn thông
NGAN HANG Nlchdh - ngân hàng câu h ỏ i hệ điều hanh
Huong-dan-BTL-He-thong-Quan-ly-quan- Cybercafe hệ điều hanh
Bai 5 cai dat va cau hinh cac dich vu trong Ubuntu hệ điều hanh
Bài t ậ p l ớ n môn C Ơ S Ở D Ữ LI Ệ U hệ điều hanh
Bare jrnl - https://www.studocu.com/vn/document/tr hệ điều hanh
14 di động phổ biến và được sử dụng rộng rãi Chương này sẽ trình bày cụ thể và rõ ràng những tiện ích mà hệ điều hành di động mang lại.
Chương 3 trình bày về các hoạt động, tổ chức của hệ điều hành di động Hệ điều hành di động vận hành quản lí về các khía cạnh như quản lí phần cứng, quản lí hệ thống file, quản lí tiến trình chạy và quản lí ứng dụng Từ đó thiết bị di động sử dụng hệ điều hành hoạt động hiệu quả, dễ dàng quản lí, bảo trì.
Chương 4 trình bày việc so sánh giữa hệ điều hành di động với nguyên lí hệ điều hành Chương này sẽ trọng tâm nghiên cứu, so sánh về kiến trúc hệ thống, tổ chức bộ nhớ, tổ chức I/O và môi trường phát triển ứng dụng.
Chương 5 sẽ tổng kết và đánh giá về hệ điều hành di động, nêu rõ những điểm mạnh cũng như những hạn chế còn tồn tại của công nghệ và thiết bị di động.
HỆ ĐIỀU HÀNH DI ĐÔNG
Khái niệm
Hệ điều hành di động là phần mềm quản lý các chức năng của thiết bị di động như điện thoại, máy tính bảng và đồng hồ thông minh Nó đóng vai trò trung tâm trong mọi hoạt động của thiết bị, cho phép người dùng tương tác hiệu quả với ứng dụng và dữ liệu.
Hệ điều hành di động đóng vai trò quan trọng trong việc kết nối các thành phần phần cứng và chức năng phần mềm của thiết bị Khi thiết bị được bật, nó hiển thị màn hình với các biểu tượng hoặc ô vuông, cho phép người dùng truy cập vào các ứng dụng Ngoài ra, hệ điều hành di động còn quản lý kết nối mạng di động và không dây, cũng như quyền truy cập vào điện thoại.
Hàng tỉ người trên toàn cầu sử dụng hệ điều hành di động cho nhiều thiết bị như điện thoại thông minh, máy tính bảng và công nghệ đeo Những hệ thống này mang đến nhiều tính năng hữu ích, bao gồm gọi điện, nhắn tin, kết nối internet và mạng di động, khả năng đa nhiệm, giao diện người dùng tương tác, cùng với quyền truy cập vào hàng triệu ứng dụng và dịch vụ bên thứ ba, từ đó nâng cao trải nghiệm người dùng.
Hình 2.1:Hệ điều hành di động
Lịch sử ra đời
Trước năm 1993, điện thoại di động sử dụng các hệ thống nhúng để kiểm soát hoạt động.
Vào tháng 4 năm 1993, GO Corp đã giới thiệu PenPoint OS, và sau đó, vào tháng 8 cùng năm, Apple ra mắt Newton OS, đánh dấu bước tiến quan trọng của các nhà sản xuất trong việc phát triển hệ thống nhúng.
Tháng 8/1994, điện thoại thông minh đầu tiên, IBM Simon ra đời với màn hình cảm ứng, email và các tính năng PDA
Năm 1998, Symbian Ltd được thành lập như một liên doanh giữa Psion, Ericsson, Motorola và Nokia Hệ điều hành EPOC32 của Psion đã được đổi tên thành Symbian và sau đó được áp dụng bởi các công ty trong liên doanh cùng nhiều thương hiệu điện thoại di động lớn, đặc biệt là Nokia.
Windows Mobile, hệ điều hành di động phát triển bởi Microsoft, ra mắt lần đầu vào năm 2000 dưới tên gọi Pocket PC Hệ điều hành này, còn được biết đến với tên gọi Windows Mobile Classic và Windows Mobile Professional, mang đến cho người dùng khả năng truy cập nhiều tính năng tương tự như trên máy tính để bàn, bao gồm Office Outlook và Internet Explorer.
Vào tháng 6/2001, nền tảng Symbian Series 80 của Nokia được ra mắt trên Nokia 9210, cho phép người dùng cài đặt ứng dụng bổ sung BlackBerry OS 1.0 ra mắt năm 2002, tiếp theo là nhiều phiên bản cải tiến Năm 2008, BlackBerry giới thiệu phiên bản 4.6 với trình duyệt mới và hỗ trợ Wi-Fi Phiên bản 5.0 mang đến giao diện người dùng cải tiến và các tính năng như gọi điện thoại bằng giọng nói và hỗ trợ email HTML Phiên bản 6 thêm khả năng tương thích với Flash và tích hợp mạng xã hội như Twitter và Facebook Phiên bản mới nhất, BlackBerry OS 10, ra mắt năm 2013 và đã ngừng hỗ trợ từ ngày 4 tháng 1 năm 2022.
Vào tháng 11 năm 2005, Nokia đã ra mắt hệ điều hành Maemo trên máy tính bảng đầu tiên, N770, với màn hình cảm ứng điện trở 4,13 inch Đến tháng 6 năm 2008, Nokia trở thành chủ sở hữu duy nhất của Symbian Ltd và hệ điều hành Symbian.
Vào tháng 2 năm 2011, Android 3.0 Honeycomb được ra mắt, đánh dấu phiên bản Android đầu tiên hỗ trợ máy tính bảng, với Motorola Xoom là chiếc máy tính bảng Android đầu tiên Đồng thời, Nokia đã quyết định từ bỏ hệ điều hành Symbian và công bố rằng họ sẽ sử dụng Windows Phone 7 của Microsoft làm nền tảng chính cho điện thoại thông minh, trong khi Symbian sẽ dần được ngừng phát triển.
Năm 2007, Apple ra mắt hệ điều hành di động đầu tiên của họ với sự ra mắt của
CHƯƠNG 2 HỆ ĐIỀU HÀNH DI ĐÔNG chiếc iPhone đầu tiên Tuy nhiên, khi ra mắt, Apple đã nói rằng iPhone chạy một phiên bản di động của OS X Chiếc iPhone đánh dấu một sự thay đổi đáng kể về trải nghiệm người dùng và tính năng so với các nền tảng trước đây Tháng 9/2012, Apple phát hành iOS 6 cùng với iPhone 5 Chiếc iPhone đầu tiên dưới thời CEO Tim Cook, từ nay Apple sẽ ra mắt thế hệ iPhone mới vào tháng 9 hàng năm. Năm 2008, Google phát hành Android để cạnh tranh với IOS và các nền tảng khác Trong những ngày đầu của Android, các thiết bị chủ yếu do HTC và Motorola sản xuất, với các công ty khác tham gia sau đó.
Android 1.0, phiên bản đầu tiên, ra mắt vào năm 2008 với giao diện người dùng cơ bản và thiếu nhiều tính năng hiện đại như cửa hàng Google Play Từ đó, nền tảng Android đã không ngừng phát triển, với sự ra mắt của Android 2 (Cupcake) trong những năm tiếp theo.
Android đã trải qua nhiều phiên bản phát triển từ năm 2009, với Android 3 (Honeycomb) ra mắt năm 2011 và Android 4 (Ice Cream Sandwich) vào năm 2012 Năm 2014, Android 5.0 (Lollipop) được phát hành, giới thiệu ngôn ngữ thiết kế Material Design và WearOS Phiên bản Android 14 mang đến trải nghiệm người dùng được cải tiến, cài đặt bảo mật mạnh mẽ và kiểm soát quản lý doanh nghiệp hiệu quả.
Từ năm 2010, sự bùng nổ của điện thoại thông minh có màn hình cảm ứng đã làm giảm đáng kể doanh số bán các điện thoại cơ bản Cụ thể, doanh số smartphone đã tăng mạnh từ 139 triệu chiếc vào năm 2008 lên tới 1,43 tỷ chiếc vào năm 2021.
Năm 2020, doanh số bán smartphone giảm còn 1,38 tỷ chiếc do tác động của đại dịch COVID-19 Trong bối cảnh này, Apple, Samsung và Xiaomi đã trở thành những người chiến thắng lớn khi chuyển đổi từ điện thoại cơ bản sang smartphone, trong khi BlackBerry và Nokia không thể tận dụng cơ hội này.
Tiện ích
Hệ điều hành di động mang đến nhiều tiện ích giúp người dùng thực hiện các nhiệm vụ cụ thể và tối ưu hóa tính năng của thiết bị di động Dưới đây là một số tiện ích phổ biến mà các hệ điều hành này thường cung cấp.
Trình duyệt web trên hệ điều hành di động cho phép người dùng duyệt internet và tìm kiếm thông tin dễ dàng Cửa hàng ứng dụng, như App Store và Google Play, giúp tải về và cài đặt ứng dụng và trò chơi Tiện ích quản lý tài liệu hỗ trợ người dùng tạo, di chuyển, và tổ chức tệp tin trên thiết bị Ứng dụng thư điện tử giúp quản lý hòm thư và kết nối các tài khoản email cá nhân và công việc Tiện ích bản đồ và định vị cung cấp khả năng tìm kiếm địa điểm, xem bản đồ và nhận hướng dẫn đi đường Trình quản lý liên hệ cho phép lưu trữ và tổ chức thông tin liên lạc, trong khi ứng dụng máy ảnh và video giúp người dùng chụp ảnh, quay video và chỉnh sửa nội dung đa phương tiện.
Hệ điều hành di động cung cấp cho người dùng các tính năng giao tiếp đa phương tiện, bao gồm gửi tin nhắn văn bản, hình ảnh, âm thanh và video, cũng như thực hiện cuộc gọi điện thoại và cuộc gọi video trực tuyến, giúp người dùng dễ dàng kết nối và chia sẻ thông tin với bạn bè và gia đình.
Nhiều hệ điều hành di động hiện nay cho phép tích hợp mạng xã hội, giúp người dùng dễ dàng kết nối với các dịch vụ phổ biến như Facebook, Twitter và Instagram.
Hệ điều hành di động tích hợp nhiều tính năng bảo mật quan trọng, bao gồm xác thực bằng vân tay, mã PIN, mã hóa dữ liệu và khả năng xóa từ xa, giúp bảo vệ thông tin cá nhân khi thiết bị bị mất hoặc đánh cắp.
HĐH di động phổ biến
Hình 2.2:Biểu đồ dữ liệu thị trường hệ điều hành di động toàn cầu
CHƯƠNG 2 HỆ ĐIỀU HÀNH DI ĐÔNG
Hiện nay, trên thị trường có nhiều hệ điều hành di động, trong đó hai hệ điều hành phổ biến nhất là Apple iOS và Google Android Mỗi hệ điều hành này mang đến một cách tiếp cận khác nhau đối với trải nghiệm người dùng và quản lý hệ thống.
Android, sản phẩm của Tổng công ty Android (Android, Inc.) với sự hỗ trợ tài chính từ Google, đã được mua lại vào năm 2005 để phát triển hệ điều hành này Dựa trên nền tảng Linux, Android được thiết kế cho smartphone và máy tính bảng, hiện đang là hệ điều hành phổ biến nhất thế giới với thị phần lên tới 70,5% trong quý 3 năm 2023 Ngoài việc sử dụng trên thiết bị di động, Android còn có thể tùy biến cho TV, máy chơi game và các thiết bị điện tử khác.
Android là hệ điều hành mã nguồn mở với khả năng tùy biến sâu và có một cộng đồng phát triển rộng lớn Mọi người dùng đều có thể trở thành nhà phát triển, mang đến sự thân thiện trong giao diện và đa dạng ứng dụng Khả năng cá nhân hóa cao của Android tạo nên sức hấp dẫn đặc biệt cho người dùng.
Hình 2.3:Hệ điều hành Android
iOS là hệ điều hành do Apple phát triển, ban đầu chỉ dành cho iPhone Sau đó, iOS được tùy biến để phù hợp với các sản phẩm khác như iPad và iPod Touch Mặc dù là một hệ sinh thái đóng, iOS vẫn cung cấp sự đa dạng về số lượng và chất lượng ứng dụng.
iPhone ra mắt năm 2007 đã cách mạng hóa trải nghiệm người dùng với giao diện thân thiện và thiết kế tinh tế Thiết bị này nổi bật với màn hình đầy đủ và bàn phím phần mềm, nhanh chóng trở thành một trong những lựa chọn di động hàng đầu trên thị trường.
iOS là hệ điều hành độc quyền của Apple, mang đến trải nghiệm mượt mà và ổn định nhờ sự tối ưu giữa phần cứng và phần mềm Với các bản cập nhật thường xuyên, iOS không ngừng cải thiện bảo mật, quyền riêng tư và quản lý, giúp duy trì vị trí hàng đầu trong công nghệ di động lâu dài.
Hình 2.4:Hệ điều hành IOS
Ngoài ra còn có thể kể đến một số hệ điều hành di động như:
Windows Phone, được phát hành bởi Microsoft vào cuối năm 2010, là phiên bản nâng cấp của Windows Mobile Nền tảng này nổi bật với tính ổn định, mượt mà và giá cả phải chăng Dòng sản phẩm Lumia của Nokia là thương hiệu nổi bật nhất gắn liền với Windows Phone.
Hệ điều hành Windows Phone kết hợp ưu điểm của Android và iOS, mang lại sự ổn định và mượt mà giống như iOS nhưng với mức giá phải chăng Tuy nhiên, sự thiếu hụt ứng dụng và khó khăn trong việc lập trình ứng dụng đã tạo ra rào cản lớn cho người dùng và nhà phát triển.
Windows Phone đã nhanh chóng mất thị phần và không thể cạnh tranh với các nền tảng khác, dẫn đến việc Microsoft chính thức khai tử hệ điều hành này vào tháng 10/2017, chấm dứt 7 năm tồn tại Sự thoái trào của Windows Phone cũng đã kéo theo sự sụp đổ của thương hiệu Nokia, một biểu tượng trong ngành di động trước đây.
CHƯƠNG 2 HỆ ĐIỀU HÀNH DI ĐÔNG
Hệ điều hành BlackBerry OS được phát triển bởi BlackBerry Ltd, một công ty di động nổi tiếng đến từ Canada, và nó là nền tảng độc quyền cho các thiết bị điện thoại BlackBerry BlackBerry, với biểu tượng "dâu đen", chính là linh hồn của thương hiệu này.
Hệ sinh thái BlackBerry thiếu ứng dụng và không thể cạnh tranh với Android hay iOS Tuy nhiên, điểm nổi bật của hệ điều hành BlackBerry là bảo mật, khiến nhiều nguyên thủ quốc gia từ các nước phát triển lựa chọn sử dụng, như tổng thống Mỹ Obama và thủ tướng Đức Angela Merkel.
Mới đây hãng công nghệ Canada này đã ngừng hỗ trợ đối với nền tảng BlackBerry
10 và chuyển sang sử dụng hệ điều hành Android Một cái kết tất yếu cho quy luật của sự cạnh tranh khốc liệt của thị trường.
Samsung là hãng công nghệ thành công nhất trong thế giới Android và là đối thủ lớn của Apple Hãng sản xuất chip không chỉ cho các sản phẩm của mình mà còn cung cấp cho Apple Ngoài ra, Samsung còn phát triển hệ điều hành di động riêng mang tên Bada.
Bada, trong tiếng Hàn, có nghĩa là đại dương và là hệ điều hành mà Samsung đặt nhiều kỳ vọng Kể từ khi ra mắt vào tháng 9 năm 2009, Samsung chỉ giới thiệu một số mẫu điện thoại sử dụng hệ điều hành này, nổi bật nhất là chiếc Samsung Wave.
Kể từ đó, Samsung đã ngừng đề cập đến nền tảng này và chuyển hướng tập trung vào việc tùy biến hệ điều hành Android cho các sản phẩm của mình.
Symbian là hệ điều hành dành cho thiết bị di động, từng được nhiều hãng như Nokia, Samsung và Sony phát triển sản phẩm Trong số đó, Nokia là hãng thành công nhất với nền tảng Symbian Trước khi Android và iOS ra đời, Symbian từng là hệ điều hành phổ biến nhất trên toàn cầu.
TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG
Quản lí phần cứng
Quản lý phần cứng trong hệ điều hành di động rất quan trọng để duy trì hiệu suất và tính năng của thiết bị Việc này bao gồm việc tối ưu hóa tài nguyên, đảm bảo khả năng tương thích và nâng cao trải nghiệm người dùng Các khía cạnh chính của quản lý phần cứng bao gồm kiểm soát CPU, bộ nhớ, và các thiết bị ngoại vi, giúp thiết bị hoạt động mượt mà và hiệu quả hơn.
Trình điều khiển là phần mềm quan trọng giúp hệ điều hành tương tác hiệu quả với phần cứng, mỗi loại phần cứng như CPU, GPU, và cảm biến đều cần trình điều khiển riêng biệt Khi thiết bị khởi động, hệ điều hành cần phát hiện và khởi tạo các trình điều khiển phù hợp Việc cập nhật trình điều khiển là cần thiết để khắc phục lỗi và nâng cao hiệu suất Các công cụ gỡ lỗi hỗ trợ nhà phát triển trong việc xác định và sửa chữa lỗi trình điều khiển Tuy nhiên, một số trình điều khiển chỉ tương thích với các phiên bản hệ điều hành nhất định, do đó việc cập nhật trình điều khiển thường cần phải đồng bộ với cập nhật hệ điều hành Cuối cùng, API (Giao diện lập trình ứng dụng) cho phép các nhà phát triển tương tác với trình điều khiển mà không cần hiểu rõ về phần cứng.
Trình điều khiển GPU là phần mềm giúp hệ điều hành tương tác hiệu quả với phần cứng đồ họa Khi ứng dụng cần vẽ hình ảnh, hệ điều hành sẽ sử dụng trình điều khiển GPU để gửi yêu cầu đến GPU, từ đó thực hiện việc hiển thị hình ảnh một cách chính xác.
2.Quản lí nguồn (Power Management)
Quản lý nguồn là yếu tố quan trọng để tối ưu hóa tuổi thọ pin và hiệu suất của thiết bị Chế độ tiết kiệm năng lượng cho phép người dùng tùy chỉnh các thiết lập phần cứng nhằm giảm tiêu thụ năng lượng khi thiết bị không hoạt động Đồng thời, việc quản lý pin giúp theo dõi và kiểm soát mức tiêu thụ pin của từng thiết bị phần cứng và ứng dụng Cuối cùng, hệ điều hành sẽ thông báo cho người dùng khi pin yếu hoặc đang trong quá trình sạc, giúp người dùng nắm bắt tình trạng pin một cách hiệu quả.
Chế độ tiết kiệm năng lượng trên Android giúp tiết kiệm pin bằng cách giảm độ sáng màn hình, hạn chế tần suất CPU và tắt kết nối không dây khi thiết bị không được sử dụng.
CHƯƠNG 3 TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG
CPU là trung tâm xử lý mọi tác vụ trên thiết bị di động, đảm nhiệm việc quản lý tác vụ bằng cách phân bổ thời gian cho các tác vụ dựa trên ưu tiên và yêu cầu của chúng Ngoài ra, CPU cũng quản lý tốc độ xung nhịp để tối ưu hóa hiệu suất và tiết kiệm năng lượng Để bảo vệ thiết bị, các cơ chế làm mát được áp dụng nhằm quản lý nhiệt độ CPU, tránh quá nhiệt và tăng tuổi thọ cho thiết bị.
Hệ điều hành có thể giảm tốc độ xung nhịp CPU khi thiết bị ở trạng thái chờ, giúp tiết kiệm năng lượng.
Quản lý bộ nhớ là quá trình bao gồm việc quản lý RAM và bộ nhớ lưu trữ, bao gồm các chức năng chính như phân bổ và thu hồi bộ nhớ, trong đó hệ điều hành phân bổ bộ nhớ cho các ứng dụng và thu hồi từ các ứng dụng không còn hoạt động Ngoài ra, quản lý bộ nhớ ảo được sử dụng để mở rộng bộ nhớ RAM khi cần thiết Quản lý bộ nhớ đệm giữ dữ liệu và mã lệnh thường xuyên sử dụng trong bộ nhớ đệm nhằm tăng tốc độ truy cập Cuối cùng, bảo vệ bộ nhớ ngăn chặn một ứng dụng truy cập vào bộ nhớ của ứng dụng khác, giúp duy trì an toàn và bảo mật cho hệ thống.
Trong iOS, hệ điều hành tự động quản lý bộ nhớ và thu hồi bộ nhớ không còn sử dụng từ các ứng dụng đã đóng.
Hình 3.4:Quản lý bộ nhó
5.Quản lí thiết bị nhập/xuất (I/O Management)
Hệ điều hành di động đóng vai trò quan trọng trong việc quản lý truyền tải dữ liệu giữa các thiết bị nhập và xuất Đầu tiên, nó xử lý các sự kiện nhập từ các nguồn như bàn phím, chuột và màn hình cảm ứng Tiếp theo, hệ điều hành quản lý dữ liệu xuất, điều khiển việc hiển thị thông tin lên màn hình, phát âm thanh qua loa và gửi dữ liệu tới các thiết bị khác Cuối cùng, để nâng cao hiệu suất, hệ điều hành áp dụng các thuật toán tối ưu hóa thứ tự truy cập thiết bị, giúp giảm thiểu thời gian chờ cho người dùng.
Khi người dùng chạm vào màn hình cảm ứng, hệ điều hành xử lý sự kiện nhập này và chuyển nó tới ứng dụng tương ứng để xử lý.
CHƯƠNG 3 TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG
Hình 3.5:Quản lý thiết bị nhập xuất
Cảm biến đóng vai trò quan trọng trong việc cung cấp dữ liệu cho hệ điều hành và ứng dụng, bao gồm việc thu thập thông tin từ các cảm biến như cảm biến gia tốc và cảm biến ánh sáng Hệ điều hành không chỉ thu thập dữ liệu mà còn quản lý quyền truy cập của các ứng dụng khác nhau vào các cảm biến này Đôi khi, để đảm bảo hoạt động chính xác, các cảm biến cần được hiệu chỉnh, chẳng hạn như việc bù trừ cho cảm biến gia tốc.
Hệ điều hành Android cho phép các ứng dụng truy cập dữ liệu từ cảm biến gia tốc để xác định hướng và vị trí của thiết bị.
Hình 3.6:Quản lý cảm biến
7.Quản lí kết nối (Connectivity Management)
Quản lý kết nối là quá trình điều chỉnh các kết nối mạng không dây và có dây, bao gồm quản lý Wi-Fi và dữ liệu di động để cung cấp truy cập Internet cho thiết bị Hệ điều hành cũng quản lý kết nối Bluetooth, cho phép truyền tải dữ liệu giữa các thiết bị Đặc biệt, hệ điều hành có khả năng tự động kết nối với các thiết bị đã ghép nối trước đó mà không cần sự can thiệp của người dùng Ví dụ, trong hệ điều hành iOS, khi người dùng bật Wi-Fi, hệ điều hành sẽ quét các mạng Wi-Fi xung quanh và tự động kết nối với mạng đã lưu trước đó.
Hình 3.7:Quản lý kết nối
Bảo mật phần cứng là yếu tố quan trọng giúp bảo vệ thiết bị khỏi các mối đe dọa bảo mật phổ biến Để đảm bảo an toàn cho dữ liệu người dùng, việc mã hóa dữ liệu là cần thiết, sử dụng các cơ chế mã hóa hiệu quả Bên cạnh đó, hệ điều hành cũng quản lý quyền truy cập vào các tài nguyên phần cứng thông qua xác thực và quyền truy cập, giúp ngăn chặn truy cập trái phép Cuối cùng, việc cập nhật bảo mật thường xuyên là rất quan trọng, giúp vá lấp các lỗ hổng bảo mật trong phần cứng và trình điều khiển, bảo vệ thiết bị khỏi các mối nguy hiểm tiềm ẩn.
Nhiều thiết bị di động hiện nay được trang bị cảm biến vân tay hoặc công nghệ nhận diện khuôn mặt, tạo ra một lớp bảo mật phần cứng bổ sung Hệ điều hành của thiết bị sẽ quản lý quy trình xác thực này và kiểm soát quyền truy cập, đảm bảo an toàn cho người dùng.
Quản lý phần cứng là yếu tố thiết yếu trong hệ điều hành di động, giúp đảm bảo mọi thiết bị hoạt động chính xác và hiệu quả.
CHƯƠNG 3 TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG
Hình 3.8:Bảo mật phần cứng
Quản lý file
Hệ thống file ext4 là hệ thống chính được Android sử dụng cho bộ nhớ trong, hỗ trợ cấu trúc thư mục, quyền truy cập và các liên kết cứng/điểm gắn kết Trong khi đó, vFAT, FAT32 và exFAT thường được áp dụng cho thẻ SD ngoại vi Khi người dùng cài đặt ứng dụng từ Google Play Store, file APK sẽ được lưu trữ trên hệ thống file ext4.
Cấu trúc thư mục của hệ điều hành bao gồm các thư mục chính như sau: Thư mục /system chứa tất cả các file của hệ điều hành và thường được gắn kết chỉ đọc Thư mục /data lưu trữ dữ liệu của tất cả các ứng dụng, trong đó /data/app chứa các file APK cài đặt và /data/data lưu trữ dữ liệu và cài đặt riêng của từng ứng dụng Thư mục /storage chứa dữ liệu người dùng như hình ảnh, tải về và nhạc, trong khi thư mục /cache dành cho dữ liệu tạm Ví dụ, ứng dụng "Dialer" sẽ nằm trong /system/app/, và dữ liệu chat của ứng dụng WhatsApp được lưu trong /data/data/com.whatsapp/.
Hình 3.10:Cấu trúc thư mục
SELinux (Security Enhanced Linux) cung cấp mức độ bảo mật cơ bản cho tài nguyên hệ thống, đảm bảo an toàn cho các ứng dụng Mỗi ứng dụng khi cài đặt sẽ được gán một ID người dùng duy nhất và hoạt động trong môi trường sandbox riêng biệt, giúp ngăn chặn các mối đe dọa tiềm ẩn.
Nếu một ứng dụng hỏi quyền truy cập vào danh bạ, và bạn từ chối, ứng dụng đó sẽ không thể đọc danh bạ.
CHƯƠNG 3 TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG
Bảo mật dữ liệu trên thiết bị di động được tăng cường thông qua mã hóa toàn bộ thiết bị (FDE) hoặc mã hóa tệp riêng lẻ (FBE) Từ Android 10 trở đi, Scoped Storage đã được áp dụng để hạn chế truy cập vào bộ nhớ bên ngoài, yêu cầu các ứng dụng phải xin phép trước khi truy cập vào dữ liệu này.
Một ứng dụng chỉnh sửa ảnh sẽ không truy cập được vào thư mục tải về trừ khi bạn cho phép.
Hệ thống APFS được tối ưu hóa cho việc lưu trữ trên bộ nhớ flash, cho phép người dùng chụp ảnh trên iPhone và lưu trữ chúng một cách hiệu quả.
Mỗi ứng dụng hoạt động trong một sandbox riêng biệt, đảm bảo không có cấu trúc thư mục truy cập chung cho người dùng Trong không gian lưu trữ riêng của từng ứng dụng, có các thư mục như Documents, Library và tmp để quản lý dữ liệu.
Khi lưu một tệp từ ứng dụng "Pages" trên iOS, tệp sẽ được lưu trong thư mụcDocuments của sandbox của ứng dụng.
CHƯƠNG 3 TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG
Hình 3.14:Cấu trúc thư mục
IOS yêu cầu ứng dụng phải có sự đồng ý từ người dùng trước khi truy cập vào các loại dữ liệu nhạy cảm như ảnh, camera và vị trí Đồng thời, các ứng dụng không được phép truy cập vào hệ thống file hoặc dữ liệu của các ứng dụng khác.
Khi ứng dụng "Facebook" muốn truy cập vào camera, nó sẽ hiển thị một cửa sổ yêu cầu quyền Nếu từ chối, Facebook không thể truy cập camera.
Để đảm bảo bảo mật dữ liệu, việc mã hóa thông tin dựa trên mã PIN hoặc mật khẩu của người dùng là rất quan trọng Bên cạnh đó, công nghệ sandboxing cho phép mỗi ứng dụng hoạt động trong không gian riêng biệt, giúp ngăn chặn việc truy cập trái phép; ví dụ, ứng dụng "WhatsApp" không thể truy cập dữ liệu của ứng dụng "Telegram" và ngược lại.
CHƯƠNG 3 TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG
Quản lí tiến trình
Quản lý tiến trình là yếu tố quan trọng giúp đảm bảo hiệu suất, bảo mật và tương tác của ứng dụng trên thiết bị di động Để thực hiện việc này, chúng ta thường sử dụng các API (giao diện lập trình ứng dụng) do hệ điều hành hoặc framework phát triển ứng dụng cung cấp Những API này cho phép kiểm soát vòng đời của ứng dụng, tạo luồng, đặt ưu tiên cho tiến trình và quản lý tài nguyên, từ đó nâng cao hiệu suất và cải thiện trải nghiệm người dùng.
Hình 3.17:Quản lý tiến trình
Tiến trình bản chất là một chương trình đang được thực hiện, đóng vai trò là một thực thể động chiếm tài nguyên của hệ thống Nó nằm trong bộ nhớ và bao gồm cả tiến trình người dùng và tiến trình hệ thống.
Có 2 trạng thái chính: chạy ,không chạy được biểu diễn chi tiết qua 5 mô hình trạng thái:mới khởi tạo, sẵn sàng, chạy, chờ đợi, kết thúc
1.Khởi tạo -> Sẵn sàng:tiến trình khởi tạo xong và đã được tải vào bộ nhớ, chỉ chờ được cấp CPU để chạy
2.Sẵn sàng -> Chạy:do kết quả điều độ CPU của OS, tiến trình được OS cấp phát CPU và chuyển sang trạng thái chạy
Khi tiến trình hiện tại chuyển sang trạng thái sẵn sàng, hệ điều hành sẽ cấp phát CPU cho một tiến trình khác Điều này xảy ra do kết quả của việc điều độ hoặc do ngắt, khiến tiến trình đang chạy phải tạm dừng và chờ đợi để được cấp CPU tiếp tục thực hiện.
4.Chạy -> Chờ đợi:Tiến trình chỉ chạy khi có 1 sự kiện nào đó xảy ra, chuyển sang trạng thái chờ được phân phối CPU để chạy tiếp.
Khi tiến trình hoàn tất, thông tin của nó được lưu trong khối quản lý tiến trình PCB, bao gồm số định danh, trạng thái tiến trình, nội dung một số thanh ghi CPU, thông tin quản lý bộ nhớ và tài nguyên có sẵn PCB giúp hệ điều hành khôi phục các thanh ghi, cho phép tiến trình tiếp tục từ trạng thái trước đó Ngoài ra, PCB còn chứa thông tin điều độ như mức độ ưu tiên, vị trí trong hàng đợi và lượng tài nguyên hiện có Thông tin về vị trí bộ nhớ của tiến trình và danh sách các tài nguyên như file mở và thiết bị vào ra cũng được lưu trữ trong PCB.
Quản lý tiến trình bao gồm nhiều hoạt động quan trọng như tạo mới tiến trình, kết thúc tiến trình, chuyển đổi giữa các tiến trình, điều độ tiến trình, đồng bộ hóa tiến trình và đảm bảo liên lạc hiệu quả giữa các tiến trình.
Luồng là một chuỗi lệnh được cấp phát CPU để thực hiện 1 cách độc lập Có 2 loại luồng: đơn luồng, đa luồng.
Tiến trình đơn luồng là một khái niệm quan trọng trong quản lý khối PCB, nơi chứa thông tin trạng thái của tiến trình và giá trị thanh ghi Ngăn xếp trong tiến trình này lưu trữ các tham số, thủ tục hàm và chương trình con Trong quá trình thực hiện, luồng sẽ kiểm soát nội dung của các thanh ghi và con trỏ lệnh.
Tiến trình đa luồng cho phép mỗi luồng tự quản lý con trỏ lệnh và nội dung thanh ghi, đồng thời có trạng thái và ngăn xếp riêng biệt Tất cả các luồng trong tiến trình chia sẻ không gian nhớ và tài nguyên, điều này giúp tối ưu hóa việc quản lý luồng và tận dụng tài nguyên một cách hiệu quả.
3.3.3 Điều độ tiến trình Điều độ tiến trình là việc quyết định tiến trình nào được sử dụng tài nguyên phần cứng khi nào, trong thời gian bao lâu Trên thực tế có các cách thức điều độ tiến trình: a.Điều độ ngắn hạn:Quyết định tiến trình nào được cấp CPU để thực hiện,thực hiện ở trạng thái tiến trình sẵn sàng.
CHƯƠNG 3 TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG b.Điều độ trung hạn:Quyết định tiến trình có được câp MEM để thực hiện không. c.Điều độ dài hạn:Thực hiện khi mới tạo ra tiến trình. d.Điều độ có phân phối lại:Hệ điều hành có thể sử dụng cơ chế ngắt để thu hồi CPU của một tiến trình đang trong trạng thái chạy. e.Điều độ không phân phối lại:Tiến trình đang ở trạng thái chạy sẽ được sử dụng CPU cho đến khi tiến trình kết thúc hoặc phải chuyển sang trạng thái chờ đợi do thực hiện I/O.
Lượng tiến trình hoàn thành, hiệu suất CPU, thời gian vòng đời trung bình, thời gian chờ đợi, thời gian đáp ứng, tính dự đoán và tính công bằng là những yếu tố quan trọng trong quản lý tiến trình Các thuật toán điều độ như FIFO, quay vòng, SPF và SRTF giúp tối ưu hóa hiệu suất và đảm bảo tính công bằng trong việc phân phối tài nguyên.
3.3.4 Các vấn đề trong quản lí tiến trình
Liên lạc giữa các tiến trình là yếu tố quan trọng trong quản lý tài nguyên, bao gồm cạnh tranh và chia sẻ tài nguyên Khi các tiến trình cạnh tranh tài nguyên, chỉ một tiến trình có thể được cấp tài nguyên, dẫn đến tình trạng chờ đợi và ảnh hưởng đến thời gian thực hiện Để khắc phục, cần áp dụng loại trừ tương hỗ nhằm tránh bế tắc và thiếu tài nguyên Trong trường hợp các tiến trình hợp tác, việc chia sẻ vùng nhớ chung yêu cầu đảm bảo loại trừ tương hỗ để ngăn ngừa bế tắc và đói tài nguyên, đồng thời duy trì tính nhất quán dữ liệu Giải pháp hiệu quả là đặt các thao tác truy cập và cập nhật dữ liệu vào đoạn nguy hiểm Ngoài ra, các tiến trình có thể liên lạc qua việc gửi thông điệp, sử dụng cơ chế liên lạc được hỗ trợ bởi thư viện ngôn ngữ lập trình, với các biện pháp như loại trừ tương hỗ, tiến triển và chờ đợi có giới hạn.
3.3.5 Tình trạng bế tắc và đói
Bế tắc là tình trạng mà một nhóm tiến trình phải dừng lại vô hạn do cạnh tranh về tài nguyên hoặc hợp tác, khi tiến trình này phải chờ đợi một sự kiện chỉ có thể xảy ra từ tiến trình khác cũng đang chờ đợi Để xảy ra bế tắc, cần có bốn điều kiện: thứ nhất, loại trừ tương hỗ, nơi tài nguyên nguy hiểm chỉ có thể được sử dụng bởi một tiến trình tại một thời điểm; thứ hai, giữ và chờ, khi tiến trình giữ tài nguyên trong khi chờ đợi tài nguyên khác; thứ ba, không có phân phối lại, nghĩa là tài nguyên không thể được phân phối lại cho tiến trình khác trừ khi tiến trình đang giữ tự nguyện giải phóng; và cuối cùng, chờ đợi vòng tròn, khi tồn tại một nhóm tiến trình mà mỗi tiến trình chờ đợi tài nguyên do tiến trình khác trong nhóm giữ.
Để quản lý tình trạng bế tắc, có thể áp dụng các biện pháp cụ thể: ngăn ngừa một trong bốn điều kiện dẫn đến bế tắc không bao giờ được thỏa mãn; cho phép một số điều kiện bế tắc được thỏa mãn nhưng đảm bảo không đạt tới điểm bế tắc; và cuối cùng, cho phép bế tắc xảy ra, phát hiện tình trạng bế tắc và khôi phục hệ thống về trạng thái không bế tắc.
Quản lí ứng dụng
Quản lý ứng dụng di động (MAM) là phần mềm bảo mật giúp kiểm soát các ứng dụng doanh nghiệp trên điện thoại thông minh và máy tính bảng MAM cho phép quản trị viên CNTT áp dụng và thực thi các chính sách công ty trên ứng dụng di động, đồng thời hạn chế việc chia sẻ dữ liệu giữa các ứng dụng Ngoài ra, phần mềm này còn tách biệt các ứng dụng và dữ liệu kinh doanh với nội dung cá nhân trên cùng một thiết bị.
Các tính năng nổi bật của MAM bao gồm phân phối phần mềm qua cửa hàng ứng dụng doanh nghiệp, quản lý giấy phép phần mềm, cấu hình ứng dụng, quản lý hàng tồn kho và quản lý vòng đời ứng dụng MAM cung cấp cho quản trị viên CNTT công cụ chi tiết để kiểm soát và bảo mật dữ liệu công ty, điều này rất quan trọng trong chiến lược di động, đặc biệt trong các chương trình mang thiết bị của riêng bạn (BYOD).
Theo truyền thống, các bộ phận CNTT thường sử dụng phần mềm quản lý thiết bị di động (MDM) để kích hoạt, đăng ký và cung cấp thiết bị, cũng như thực hiện các chức năng như xóa từ xa Cách tiếp cận này phù hợp với các tình huống khi tổ chức mua thiết bị di động cho nhân viên sử dụng.
CHƯƠNG 3 TỔ CHỨC HỆ ĐIỀU HÀNH DI ĐỘNG chúng cho các vấn đề liên quan đến công việc.
Các phương pháp phát triển phần mềm như bộ công cụ phát triển phần mềm (SDK) và gói ứng dụng liên quan đến việc tích hợp mã bổ sung vào ứng dụng trong quá trình sử dụng SDK hoặc sau khi phát triển Mã này giúp kết nối ứng dụng với phần mềm quản lý ứng dụng di động (MAM), cho phép quản trị viên CNTT thực hiện và áp dụng các chính sách bảo mật cũng như các biện pháp bảo vệ dữ liệu hiệu quả cho ứng dụng.
Containerization, hay còn gọi là hộp cát ứng dụng, là phương pháp tách biệt ứng dụng hoặc nhóm ứng dụng khỏi các ứng dụng khác trên thiết bị Dữ liệu trong khu vực biệt lập, được gọi là vùng chứa, không thể rời khỏi và các ứng dụng trong vùng chứa không thể tương tác với dữ liệu bên ngoài Một ví dụ điển hình về containerization là công nghệ cá nhân kép, cho phép tạo ra hai giao diện người dùng riêng biệt – một cho công việc và một cho mục đích sử dụng cá nhân – trên cùng một thiết bị.
Một phương pháp kiểm soát và bảo mật ứng dụng hiệu quả là thông qua giao thức MDM tích hợp trong hệ điều hành di động Tính năng Managed Open In của Apple cho phép quản trị viên kiểm soát việc chia sẻ dữ liệu từ ứng dụng, ngăn ngừa người dùng tải tài liệu lên ứng dụng lưu trữ đám mây cá nhân Trong khi đó, Google Android sử dụng hộp cát để quản lý an toàn các ứng dụng và dữ liệu cá nhân của công ty, với công nghệ Knox từ Samsung cũng cung cấp khả năng tương tự Tuy nhiên, việc quản lý ứng dụng đối mặt với nhiều thách thức, bao gồm nguy cơ tấn công lừa đảo và phần mềm độc hại do sự phân tán của thiết bị di động Giải pháp bảo mật MAM cần tích hợp với dịch vụ thư mục bên thứ ba và cho phép quản lý bảo mật qua các chính sách toàn cầu, yêu cầu xác thực an toàn để bảo vệ dữ liệu công ty Thêm vào đó, sự khác biệt trong kỹ thuật app containerization và việc triển khai quản lý danh mục ứng dụng giữa các nền tảng như Google Play và App Store cũng tạo ra khó khăn Cuối cùng, tổ chức cần xem xét loại hệ điều hành di động mà họ muốn quản lý, vì các sản phẩm MAM hỗ trợ các hệ thống khác nhau.
Hình 3.18:Quản lý ứng dụng
SO SÁNH NGUYÊN LÍ HỆ ĐIỀU HÀNH
Kiến trúc hệ thống
Mỗi hệ điều hành di động đều có một kiến trúc riêng của nó Ta sẽ đi phân tích một số hệ điều hành di động phổ biến:
Android hiện nay thuộc sở hữu và phát triển của Google Hệ điều hành Android bao gồm một ngăn xếp phần mềm được chia thành 5 phần và 4 lớp chính, như được thể hiện trong hình ảnh bên dưới.
Hình 4.1:Kiến trúc của Android OS
Linux Kernel là nền tảng cốt lõi của hệ thống, quản lý phần cứng và tài nguyên cơ bản Android runtime bao gồm các thư viện lõi và Dalvik VM, cung cấp chức năng cho việc thực thi mã ứng dụng Java VMCore đảm nhiệm việc biên dịch và chạy mã Java trên hạt nhân Linux, đồng thời cung cấp thư viện C/C++ và Java hỗ trợ tính năng hệ thống và đồ họa Application Framework hoạt động như lớp trung gian giữa ứng dụng và hệ thống, cung cấp API và dịch vụ cần thiết cho phát triển ứng dụng Cuối cùng, các ứng dụng tương tác với người dùng được xây dựng trên nền tảng Framework, sử dụng tài nguyên từ thư viện và hạt nhân.
IOS có một cấu trúc đơn giản, cực nhỏ IOS được thiết kế dựa vào những ràng buộc về bộ nhớ, về tốc độ, phần cứng của router.
Hình 4.2:Kiến trúc của IOS
Các tiến trình là những tuyến riêng lẻ kết hợp với dữ liệu để thực hiện các tác vụ như duy trì hệ thống và chuyển mạch gói dữ liệu Nhân cung cấp các dịch vụ cơ bản của hệ thống, bao gồm quản lý bộ nhớ và lập lịch tiến trình, đồng thời quản lý tài nguyên phần cứng như CPU và bộ nhớ cho các tiến trình Bộ đệm gói cung cấp bộ đệm toàn cục và kết hợp với chức năng quản lý bộ đệm để lưu trữ gói dữ liệu trong quá trình chuyển mạch Trình điều khiển thiết bị điều khiển giao tiếp giữa phần cứng và thiết bị ngoại vi, cũng như giữa các tiến trình IOS, kernel và phần cứng, đồng thời tương tác với phần mềm chuyển mạch nhanh Hardware đề cập đến các chip vật lý được hàn vào mạch điện thoại iPhone.
Hệ điều hành Windows Phone đã ngừng phát triển và không còn được hỗ trợ từ năm 2017, khi Microsoft ngừng cung cấp các phiên bản mới Trước đó, Windows Phone sử dụng kiến trúc dựa trên Windows NT Core, tương tự như hệ điều hành Windows trên máy tính.
CHƯƠNG 4 SO SÁNH NGUYÊN LÍ HỆ ĐIỀU HÀNH
Hình 4.3:Kiến trúc của Window Phone OS
Phần cứng bao gồm CPU ARM7, GPU hỗ trợ X9, RAM 256MB và màn hình cảm ứng đa điểm với các nút vật lý Kernel quản lý quyền truy cập trình điều khiển thiết bị, bảo mật, mạng và lưu trữ cơ bản Ba thư viện mô hình ứng dụng, mô hình giao diện người dùng và mô hình tích hợp đám mây hoạt động trên hạt nhân để quản lý ứng dụng và thông báo Các API hỗ trợ ứng dụng bao gồm Silverlight, HTML/Javascript và CLR, cho phép phát triển ứng dụng bằng C# Net và VB.Net.
Hệ điều hành Symbian, được phát triển cho một số điện thoại di động, đã trở thành nền tảng phổ biến nhất trên các dòng điện thoại cao cấp của Nokia Sự thành công của Nokia với Symbian đã giúp hệ điều hành này chiếm lĩnh thị trường trong một thời gian dài.
Kiến trúc của Symbian OS được chia thành năm tầng chính Tầng 1 là nhân hệ điều hành (kernel) tích hợp với phần cứng Tầng 2 là tầng dịch vụ cơ bản, cung cấp chương trình sườn cho các thành phần khác, bao gồm các file hệ thống và thư viện như Low Level Libraries và Fileserver Tầng 3, tầng OS Services, là tầng quan trọng nhất, cung cấp hạ tầng cho các thành phần như Multimedia, Graphics, Networking, Telephony và các giao thức kết nối với PC Tầng 4, tầng Application Services, chứa dữ liệu của người dùng Cuối cùng, tầng 5 là UI Framework, xây dựng giao diện người dùng với hai phần chính là UI Framework và UI Toolkit Tầng Java, tương tự như tầng 4 và 5, cho phép cài đặt và chạy các ứng dụng Java.
Mặc dù mỗi hệ điều hành đều có kiến trúc hệ thống riêng, chúng sở hữu một vài điểm chung sau:
- Máy ảo để chạy các ứng dụng (Runtime).
- Các thư viện và framework hỗ trợ thêm.
So với nguyên lý hệ điều hành, hệ điều hành di động không sử dụng cấu trúc nguyên
CHƯƠNG 4 SO SÁNH NGUYÊN LÍ HỆ ĐIỀU HÀNH khối mà sử dụng cấu trúc lai, thường là kết hợp cấu trúc phân lớp với cấu trúc vi nhân.
- Lớp hardware abstraction: là giao diện tương tác giữa nhân và phần cứng, hiện diện ở tầng thấp nhất.
- Lớp Microkernel: đây là microkernel cũ mà chúng ta biết, nó bao gồm việc định thời CPU, quản lý bộ nhớ và giao tiếp giữa các quá trình.
- Lớp Application: hoạt động như một giao diện giữa người dùng và microkernel
Hình 4.5:Kiến trúc lai 3 lớp
1 Hiệu suất cao: Cấu trúc lai thường cung cấp hiệu suất cao hơn so với các kiến trúc khác Điều này xảy ra vì không có chi phí giao tiếp giữa các thành phần hệ thống, và các thành phần tương tác trực tiếp và nhanh chóng.
2 Đơn giản hóa việc phát triển ứng dụng: Việc phát triển ứng dụng trên một hệ điều hành có cấu trúc lai thường đơn giản hóa hơn, vì các thành phần quan trọng có thể tương tác trực tiếp và giao tiếp dễ dàng.
3 Kiểm soát tài nguyên phần cứng: Cấu trúc lai cho phép kiểm soát chính xác các tài nguyên phần cứng và quản lý chúng một cách hiệu quả.
1 Khả năng mở rộng hạn chế: Việc mở rộng hoặc sửa đổi hệ thống có thể trở nên phức tạp và dễ gây lỗi do các thành phần tương tác trực tiếp.
2 Khó khăn trong cách ly lỗi: Một lỗi trong một thành phần có thể ảnh hưởng đến toàn bộ hệ thống.
3 Khó khăn trong việc hỗ trợ đa nhiệm và đa nhiệm cùng lúc: Cấu trúc lai có thể gặp khó khăn trong việc quản lý đa nhiệm và đa nhiệm cùng lúc nhiều ứng dụng.
Tổ chức bộ nhớ
Mỗi hệ điều hành di động có cách tổ chức bộ nhớ riêng, nhưng vẫn tuân theo nguyên lý chung với bốn phương pháp quản lý bộ nhớ chính.
Hệ điều hành di động phổ biến hiện nay có các cách tổ chức bộ nhớ:
Android sử dụng runtime và máy ảo riêng để quản lý bộ nhớ ứng dụng, tương tự như Java và NET Khác với các frameworks, runtime của Android còn đảm nhiệm việc quản lý thời gian tồn tại của quy trình Để đảm bảo khả năng phản hồi cho ứng dụng, Android có khả năng dừng và hủy bỏ các tiến trình không cần thiết, nhằm giải phóng tài nguyên cho các ứng dụng có mức độ ưu tiên cao hơn Mỗi ứng dụng Android hoạt động trong một quy trình riêng biệt, sử dụng phiên bản Dalvik, chịu trách nhiệm hoàn toàn về quản lý bộ nhớ và quy trình trong thời gian chạy của Android.
ARC (Automatic Reference Counting) trong iOS tự động quản lý bộ nhớ bằng cách đếm tham chiếu, giúp giữ và giải phóng các đối tượng mà không cần thao tác thủ công Hiện tại, iOS hỗ trợ ARC, cho phép lập trình viên không cần lo lắng về việc giữ và nhả đối tượng Xcode sẽ tự động thực hiện quy trình này trong thời gian biên dịch, giúp tối ưu hóa hiệu suất và giảm thiểu lỗi liên quan đến quản lý bộ nhớ.
Tính năng phân trang trong Windows giúp quản lý bộ nhớ hiệu quả bằng cách cho phép phần mềm sử dụng địa chỉ bộ nhớ logic thay vì địa chỉ vật lý Mỗi tiến trình trong hệ thống có không gian địa chỉ logic riêng 4GB, với 2GB không gian địa chỉ người dùng độc lập cho từng ứng dụng Điều này tạo ra ấn tượng rằng mỗi ứng dụng chỉ có 2GB bộ nhớ, mặc dù tổng bộ nhớ khả dụng lớn hơn Khi ứng dụng cần nhiều bộ nhớ hơn, Windows NT sẽ phân trang các trang bộ nhớ không cần thiết vào tệp trang, giải phóng các trang vật lý cho các tiến trình khác.
CHƯƠNG 4 SO SÁNH NGUYÊN LÍ HỆ ĐIỀU HÀNH của bộ nhớ Do đó, một đống toàn cục tồn tại không lâu trong Windows NT.
Hệ điều hành Symbian sử dụng bộ nhớ Flash để lưu trữ mã hệ thống và dữ liệu người dùng, với hai loại chính là NOR và NAND Symbian tối ưu hóa việc sử dụng bộ nhớ Flash qua lựa chọn hệ thống tệp, trong đó ổ Z chứa mã hệ thống chỉ đọc và ổ C lưu trữ ứng dụng cùng dữ liệu người dùng có thể ghi Hiện nay, điện thoại Symbian thường trang bị từ 32 đến 64 MB Flash cho mã và dữ liệu Để giảm thiểu kích thước mã và dữ liệu, Symbian áp dụng nhiều kỹ thuật như tập lệnh THUMB, hình ảnh XIP liên kết trước, tệp thực thi nén, định dạng dữ liệu nén và tiêu chuẩn mã hóa nhằm tối ưu hóa kích thước mã.
Hệ điều hành di động sử dụng các thiết bị I/O nhỏ gọn, không dây và cảm ứng như màn hình, bàn phím, chuột, camera, loa, micro và cảm biến, trong khi hệ điều hành máy tính thường sử dụng thiết bị I/O có dây và cơ học như ổ đĩa, bàn phím, chuột và máy in Sự khác biệt này mang lại nhiều lợi thế cho hệ điều hành di động.
1 Chúng cho phép người dùng tương tác với các thiết bị di động một cách dễ dàng, thuận tiện và linh hoạt hơn Ví dụ, người dùng có thể sử dụng màn hình cảm ứng để vuốt, chạm, xoay, phóng to, thu nhỏ, v.v., hoặc sử dụng nhận dạng tiếng nói để ra lệnh, gọi điện thoại, tìm kiếm thông tin, v.v.
2 Chúng hỗ trợ cho việc phát triển và sáng tạo các ứng dụng mới cho các thiết bị di động Ví dụ, các thiết bị I/O cảm ứng như màn hình, bàn phím, chuột, v.v., giúp tạo ra các giao diện người máy trực quan và thân thiện Các thiết bị I/O như camera, loa, micro, cảm biến, v.v., giúp tạo ra các ứng dụng thực tế ảo (VR), thực tế tăng cường (AR), trí tuệ nhân tạo (AI), v.v.
Hệ điều hành di động sử dụng các giao thức I/O đơn giản như Bluetooth và Wi-Fi, giúp tiết kiệm không gian, năng lượng và chi phí cho thiết bị Các thiết bị I/O không dây giảm thiểu sự phụ thuộc vào cáp kết nối, cải thiện khả năng kết nối Đồng thời, các thiết bị nhỏ gọn như camera và cảm biến nâng cao chức năng mà không làm tăng kích thước Ngược lại, hệ điều hành máy tính sử dụng giao thức phức tạp như PCI, SCSI và SATA để kết nối các linh kiện phần cứng Hệ điều hành di động áp dụng các kỹ thuật I/O hiệu quả năng lượng như ngắt quãng và DMA, trong khi hệ điều hành máy tính ưu tiên tối ưu hiệu suất với polling, caching và spooling Các kỹ thuật I/O hiệu quả năng lượng mang lại nhiều lợi ích đáng kể.
1 Giảm thiểu sự can thiệp của CPU vào quá trình I/O, do đó tiết kiệm tài nguyên và năng lượng cho CPU Ví dụ, kỹ thuật ngắt quãng cho phép CPU thực hiện các công việc khác trong khi chờ I/O hoàn tất, thay vì phải kiểm tra liên tục trạng thái của thiết bị I/O như kỹ thuật polling Kỹ thuật DMA cho phép truyền dữ liệu trực tiếp giữa thiết bị I/O và bộ nhớ mà không cần qua CPU, do đó giúp giảm tải cho CPU.
2 Tăng cường khả năng đáp ứng và linh hoạt của hệ điều hành di động Ví dụ, kỹ thuật ngắt quãng cho phép hệ điều hành xử lý các sự kiện bất đồng bộ từ các thiết bị I/O, như bàn phím, chuột, màn hình cảm ứng, v.v., mà không cần chờ đợi theo thứ tự Kỹ thuật DMA cho phép hệ điều hành di động thực hiện các tác vụ I/O nặng như phát video, âm thanh, v.v., mà không làm giảm hiệu suất của hệ thống.
Môi trường phát triển ứng dụng
Môi trường phát triển của hệ điều hành di động và máy tính có sự khác biệt rõ rệt về mục đích, tính năng, hiệu suất và khả năng phục hồi Những điểm khác biệt này ảnh hưởng đến cách thức thiết kế và tối ưu hóa các ứng dụng cho từng nền tảng.
Hệ điều hành trên máy tính được thiết kế chủ yếu để phục vụ công việc, bao gồm cả giải trí và liên lạc, trong khi hệ điều hành di động tập trung nhiều hơn vào các tính năng liên quan đến liên lạc Mặc dù GPS có thể được sử dụng trên máy tính, nhưng việc chụp ảnh hay tìm đường sẽ không thuận tiện bằng việc sử dụng điện thoại di động Hệ điều hành di động cung cấp nhiều tính năng camera đa dạng như chụp ảnh selfie, quay video, chụp ảnh panorama, HDR, xóa phông, góc rộng, gần, ban đêm, cũng như thực tế ảo và tăng cường Trong lĩnh vực giải trí, hệ điều hành di động cũng thể hiện sự tối ưu khi cho phép chơi game mà không cần cấu hình cao như trên máy tính.
1 Hệ điều hành trên máy tính có thể được sử dụng để làm việc với các ứng dụng
CHƯƠNG 4 SO SÁNH NGUYÊN LÍ HỆ ĐIỀU HÀNH chuyên nghiệp như Microsoft Office, Adobe Photoshop, AutoCAD, MATLAB, và các trình biên dịch ngôn ngữ lập trình Những ứng dụng này đòi hỏi máy tính phải có khả năng xử lý cao, bộ nhớ lớn và giao diện người dùng rộng rãi.
Hệ điều hành di động có thể gặp khó khăn trong việc hỗ trợ hoặc chạy mượt mà các ứng dụng như Microsoft Office Mặc dù ứng dụng này có thể sử dụng trên thiết bị di động, nhưng người dùng thường gặp phải những bất tiện như màn hình nhỏ, thiếu tính năng đầy đủ và cần kết nối Internet để có trải nghiệm tốt nhất.
2 Hệ điều hành di động sử dụng các ứng dụng liên lạc đa dạng và phong phú, như Zalo, Facebook Messenger, WhatsApp, Skype, v.v., để cho phép người dùng giao tiếp với nhau qua nhiều hình thức khác nhau, như tin nhắn văn bản, tin nhắn thoại, cuộc gọi, cuộc gọi video, nhóm chat, v.v Người dùng có thể sử dụng các ứng dụng liên lạc này mọi lúc mọi nơi, chỉ cần có kết nối Internet.
Hệ điều hành máy tính chủ yếu sử dụng các ứng dụng email như Gmail, Outlook và Yahoo để người dùng có thể giao tiếp qua tin nhắn văn bản và chia sẻ tệp đính kèm.
Hệ điều hành di động kết hợp các tính năng của hệ điều hành máy tính cá nhân với các chức năng hữu ích cho thiết bị di động, bao gồm màn hình cảm ứng, mạng di động, Bluetooth, Wi-Fi Protected Access, GPS, và khả năng chụp ảnh, quay video Ngoài ra, hệ điều hành máy tính thường có nhiều tính năng khác nhau tùy thuộc vào loại máy và mục đích sử dụng, nhưng thường bao gồm quản lý tập tin, bộ nhớ, tiến trình, thiết bị ngoại vi, giao diện người dùng, mạng máy tính, bảo mật và phân quyền.
1 Hệ điều hành di động cho phép người dùng tải về và cài đặt các ứng dụng từ các cửa hàng ứng dụng trực tuyến, như Google Play Store hoặc App Store, một cách dễ dàng và nhanh chóng Hệ điều hành di động cũng cung cấp các tính năng quản lý ứng dụng, như cập nhật, gỡ bỏ, di chuyển, xóa bộ nhớ đệm, và xóa dữ liệu Hệ điều hành trên máy tính thường yêu cầu người dùng tải về và cài đặt các ứng dụng từ các trang web hoặc đĩa CD/DVD, một cách thủ công và tốn thời gian Hệ điều hành trên máy tính cũng có ít tính năng quản lý ứng dụng, như thêm/xoá chương trình, sửa lỗi, và gỡ bỏ phần mềm.
2 Hệ điều hành di động có tính năng thông báo, cho phép người dùng nhận được các thông tin mới nhất từ các ứng dụng, như tin nhắn, cuộc gọi, email, tin tức, thời tiết, lịch, và nhiều hơn nữa Hệ điều hành di động cũng cho phép người dùng tùy chỉnh các thiết lập thông báo, như âm thanh, rung, đèn LED, biểu tượng trên thanh trạng thái, khóa màn hình, và trung tâm thông báo Hệ điều hành trên máy tính có ít tính năng thông báo, chỉ giới hạn ở một số ứng dụng nhất định, như email, lịch, hoặc mạng xã hội Hệ điều hành trên máy tính cũng không cho phép người dùng tùy chỉnh các thiết lập thông báo một cách chi tiết.
3 Hệ điều hành di động có tính năng chia sẻ, cho phép người dùng chia sẻ nội dung từ các ứng dụng với các ứng dụng khác hoặc với người khác một cách nhanh chóng và tiện lợi Hệ điều hành di động cũng hỗ trợ nhiều phương thức chia sẻ khác nhau, như Bluetooth, Wi-Fi Direct, NFC, QR Code, email, tin nhắn, mạng xã hội, và nhiều hơn nữa Hệ điều hành trên máy tính có ít tính năng chia sẻ, chỉ cho phép người dùng chia sẻ nội dung qua một số kênh giới hạn, như email, USB, hoặc mạng LAN.
Hệ điều hành di động được thiết kế để hoạt động hiệu quả trên các thiết bị với tài nguyên hạn chế như bộ nhớ, pin và tốc độ xử lý, do đó cần tối ưu hóa hiệu suất để tiết kiệm pin và duy trì tốc độ Trong khi đó, hệ điều hành máy tính có tài nguyên phong phú hơn nhưng cũng cần đảm bảo hiệu suất cao để xử lý các ứng dụng nặng và hỗ trợ đa nhiệm.
1 Hệ điều hành di động thường có khả năng khởi động nhanh hơn so với hệ điều hành trên máy tính, vì nó không cần phải tải nhiều dịch vụ và ứng dụng khi khởi động Hệ điều hành di động cũng có tính năng ngủ sâu (deep sleep), cho phép thiết bị tiết kiệm pin khi không sử dụng, nhưng vẫn có thể nhận được các thông báo và cuộc gọi Hệ điều hành trên máy tính thường mất nhiều thời gian để khởi động, vì nó phải tải nhiều driver, service và ứng dụng khi khởi động.
Hệ điều hành máy tính không hỗ trợ tính năng ngủ sâu, mà chỉ cung cấp chế độ ngủ (sleep) và chế độ ngủ đông (hibernate) Những chế độ này giúp tiết kiệm điện năng khi máy tính không hoạt động, nhưng có thể làm giảm hiệu suất khi khởi động lại.
2 Hệ điều hành di động thường có khả năng chạy mượt mà các ứng dụng trên các thiết bị có cấu hình thấp hoặc trung bình, vì nó được tối ưu hoá cho việc sử dụng tài nguyên hạn chế Hệ điều hành di động cũng có tính năng quản lý bộ nhớ thông minh, cho phép giải phóng bộ nhớ khi cần thiết, hoặc giữ lại các ứng dụng đã mở để tiếp tục sử dụng Hệ điều hành trên máy tính thường yêu
CHƯƠNG 4 SO SÁNH NGUYÊN LÍ HỆ ĐIỀU HÀNH cầu máy tính có cấu hình cao để chạy mượt mà các ứng dụng, vì nó không được tối ưu hoá cho việc sử dụng tài nguyên ít Hệ điều hành trên máy tính cũng có khả năng quản lý bộ nhớ kém, dẫn đến hiện tượng giật lag, treo máy hoặc mất dữ liệu.
ĐÁNH GIÁ VÀ KẾT LUẬN
Điểm mạnh của hệ điều hành di động
Hệ điều hành di động được phát triển dựa trên nguyên lý hoạt động và cấu trúc của hệ điều hành máy tính, mang đến nhiều tính năng hữu ích cho thiết bị cầm tay như hỗ trợ cảm ứng, kết nối mạng di động, WIFI, Bluetooth, và hệ thống định vị toàn cầu (GPS) Thêm vào đó, một số thiết bị tiên tiến còn tích hợp khả năng nhận dạng âm thanh và cảm biến khuôn mặt, nâng cao trải nghiệm người dùng.
Việc sử dụng thiết bị hoạt động dưới hệ điều hành di động mang lại nhiều lợi ích, trong đó giao diện dễ sử dụng là một trong những mục đích chính Hệ điều hành di động thường có giao diện người dùng thân thiện, giúp người dùng dễ dàng tương tác và thao tác Sự đơn giản và trực quan của giao diện này cho phép người dùng nhanh chóng làm quen và sử dụng điện thoại một cách hiệu quả.
Hệ điều hành di động cung cấp cửa hàng ứng dụng chính thức, cho phép người dùng dễ dàng tải về, cài đặt và cập nhật ứng dụng Điều này tạo ra một môi trường phong phú và đa dạng về chức năng cho người dùng.
Hệ điều hành di động hỗ trợ đa phương tiện, cho phép người dùng trải nghiệm âm nhạc, video, hình ảnh và các tính năng như máy ảnh, quay phim ngay trên điện thoại Các thiết bị như điện thoại di động và máy tính bảng nhỏ gọn, tiện lợi, dễ mang theo và sử dụng, luôn sẵn sàng hoạt động mà không cần chờ đợi Hệ điều hành di động còn hỗ trợ đồng bộ hóa dữ liệu hiệu quả, giúp người dùng lưu trữ thông tin và sử dụng ứng dụng trên nhiều thiết bị tương thích.
Vấn đề và thách thức
Nhiều hệ điều hành di động đối mặt với các thách thức đa dạng Bài viết này sẽ trình bày chi tiết những vấn đề và thách thức phổ biến cũng như cơ bản mà các hệ điều hành di động gặp phải.
1 Thiết kế hệ điều hành di động gặp phải các vấn đề về khả năng sử dụng và khả năng tương tác Các vấn đề về khả năng sử dụng gặp khó khăn do kích thước vật lý nhỏ của kiểu dáng điện thoại di động Các vấn đề về khả năng tương tác
CHƯƠNG 5 ĐÁNH GIÁ VÀ KẾT LUẬN phát sinh từ sự phân mảnh nền tảng của thiết bị di động, hệ điều hành di động và trình duyệt di động.
2 Yêu cầu cần quản lý hiệu quả cấu hình phần cứng và phần mềm để tích hợp tối đa các tính năng.
3 Việc phân phối nội dung cho nhiều điện thoại thông minh khác nhau do các nhà cung cấp dịch vụ khác nhau vận hành là rất khó khăn.
4 Giới thiệu khả năng xảy ra lỗi cấu hình, lỗi (trong cả hệ điều hành và trong các ứng dụng mà nó chạy), vi-rút và phần mềm độc hại khác.
5 Khả năng thích ứng của các ứng dụng trên nhiều hệ điều hành di động khác nhau Thiết kế một ứng dụng cho nhiều hệ điều hành di động yêu cầu nhiều thiết kế và mọi mô hình phải trực quan cho các nhóm người dùng cụ thể (dành riêng cho hệ điều hành).
6 Cá nhân hóa được coi là thách thức lớn nhất vì nó là yếu tố then chốt tạo nên sự thành công của HĐH
Kết luận
Hệ điều hành di động là nền tảng phần mềm quan trọng giúp quản lý và hỗ trợ các chương trình trên thiết bị di động Mỗi nhà sản xuất trang bị cho thiết bị của mình một hệ điều hành riêng, xác định các chức năng và tính năng như bàn phím, đồng bộ hóa ứng dụng, email và tin nhắn Hệ điều hành cũng quyết định các ứng dụng bên thứ ba có thể sử dụng trên thiết bị Bài nghiên cứu này tập trung vào sự phát triển, các loại hệ điều hành di động, thị trường, so sánh, cũng như các vấn đề và thách thức hiện tại Nghiên cứu đang được thực hiện để tìm ra giải pháp nhằm duy trì vị thế trong thị trường cạnh tranh của các nhà cung cấp.
[1] url:https://www.techtarget.com/searchmobilecomputing/ definition/mobile-operating-system.
[2] url:https://www.techtarget.com/searchmobilecomputing/ definition/mobile-application-management-MAM.
[3] url:https://www.techtarget.com/searchmobilecomputing/ resources/Mobile-infrastructure.
[4] url:https://www.cambridge.org/core/books/abs/smartphone- energy-consumption/mobile-operating-systems.
[5] url:http://www.ijarcs.info/index.php/Ijarcs/article/ view/2498/2486.
[6] url:https://www.cambridge.org/core/books/abs/smartphone- energy-consumption/mobile-operating-systems.
[7] url:http://www.ijarcs.info/index.php/Ijarcs/article/ view/2498/2486.
[8] url:https://www.researchgate.net/figure/Architecture- of-Windows-Mobile-OS_fig2_280310649.
[9] url:https : / / www sciencedirect com / topics / computer- science/mobile-operating-system.