1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI tập lớn môn hệ điều HÀNH đề tài tìm HIỂU về HAI họ hệ điều HÀNH MACOS và IOS

28 45 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tìm hiểu về hai họ hệ điều hành: MacOS và IOS
Tác giả Nguyễn Đình Khả, Bùi Mạnh Hùng, Nguyễn Hải Phong
Người hướng dẫn ThS. Đinh Xuân Trường
Trường học Học Viện Công Nghệ Bưu Chính Viễn Thông
Chuyên ngành Hệ điều hành
Thể loại Bài tập lớn
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 28
Dung lượng 1,11 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Người dùng cóthể tương tác với hệ điều hành này thông qua nhiều động tác bằng tay trên mànhình cảm ứng của các thiết bị của Apple..  Giống như Safari, Finder sử dụng các tab để cho phép

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚNMÔN: HỆ ĐIỀU HÀNH

ĐỀ TÀI: TÌM HIỂU VỀ HAI HỌ HỆ ĐIỀU HÀNH: MACOS VÀ IOS

Giảng viên HD: ThS Đinh Xuân Trường Nhóm môn học: 01

Nhóm bài tập : 12 Các thành viên nhóm thực hiện:

1 2 3

Nguyễn Đình Khả B20DCCN363 Bùi Mạnh Hùng B20DCCN292 Nguyễn Hải Phong B20DCCN495

Hà Nội 2022

Trang 2

MỤC LỤC

PHẦN 1: GIỚI THIỆU: ……… 2

1 1 1 1 Giới thiệu khái quát về hệ thống: Sự ra đời của hệ thống: ……… 2

1 1 1.1 Hệ điều hành iOS và lịch sử hình thành ………2

.1.2 Hệ điều hành macOS và lịch sử hình thành ……… 3

.2 Mục đích của hệ thống ……….5

1 1 2.1 Hệ điều hành iOS………5

.2.2 Hệ điều hành macOS ……….6

.3 Thống kê về số lượng người sử dụng: ……….6

1 1 3.1 Lượng người dùng và thị phần của iOS ……….6

.3 Lượng người dùng và thị phần của macOS ……….…….7

PHẦN 2: NỘI DUNG CHI TIÉT: ……….… 9

.1 Quản lý file như thế nào? ……….…9

2 2 2 1.1 Quản lý file trong iOS ……….… 11

.1.2 Quản lý file trong macOS ……… 14

2 2 2 2 Quản lý bộ nhớ chính (Trong): ………14

2 2 2.1 Bộ nhớ chính của iOS……….…14

.2.2 Bộ nhớ chính của macOS ……… 17

.3 Quản lý tiến trình: ……… 19

2 2 3.1 Tiến trình trong iOS ……… 19

.3.2 Tiến trình trong macOS ……… … 21

.4, So sánh (nêu lên các đặc điểm khác biệt của hệ thống) ……… 23

Trang 3

Hệ điều hành IOS là gì?

- iOS là hệ điều hành trên thiết bị di động của Apple Ban đầu hệ điều hành này chỉđược phát triển để chạy trên iPhone, nhưng sau đó nó đã được mở rộng để chạytrên các thiết bị của Apple như iPod touch, iPad và Apple TV

- Giao diện người dùng của iOS dựa trên cơ sở thao tác bằng tay Người dùng cóthể tương tác với hệ điều hành này thông qua nhiều động tác bằng tay trên mànhình cảm ứng của các thiết bị của Apple

Lịch sử hệ điều hành iOS

- Hệ điều hành này được tiết lộ tại Hội nghị và Triển lãm Macworld diễn ra vàotháng 1 năm 2007 và được phát hành vào tháng 9 năm đó Khi đó, hệ điều hànhnày chưa có một cái tên riêng chỉ đơn giản là “iPhone chạy OS X”

Trang 4

Hình 1.1.1 Stev Jobs tại Triển lãm Macworld diễn ra vào tháng 1 năm 2007

- Ngày 6 tháng 3 năm 2008, Apple đã phát hành bản dùng thử đầu tiên, cùng vớimột cái tên đầu tiên cho iOS, đó là "iPhone OS"

Hình 1.1.2 Các phiên bản iOS từ 2007 - 2022

Trang 5

- macOS đã kế tục Mac OS cổ điển , một hệ điều hành Mac với chín bản phát hành

từ năm 1984 đến năm 1999 Trong thời gian này, người đồng sáng lập Apple SteveJobs đã rời Apple và thành lập một công ty khác, NeXT , phát triển nền

tảng NeXTSTEP mà sau này được Apple mua lại để hình thành nền tảng của

Hình 1.1.3 Logo của Mac OS X / OS X / macOS , từ Cheetah 10.0 / Puma 10.1 đến Ventura 13.

Dòng thời gian của các phiên bản:

Trang 6

Hình 1.1.4 Dòng thời gian của hệ điều hành macOS.

Trang 7

- Hệ điều hành này có một lưới đơn giản gồm các biểu tượng đầy màu sắc giúpthiết bị có cảm giác dễ tiếp cận và dễ sử dụng Chỉ cần nhấn vào ứng dụng bạnmuốn mở và nhấn nút vật lý để quay lại trang chủ Nhìn lại thì có vẻ là một kháiniệm hiển nhiên, nhưng những chiếc điện thoại thông minh trước đây như

Blackberry nổi tiếng là CỒNG KỀNH KHI SỬ DỤNG

- Cuối cùng, ảnh hưởng của iOS trên vô số ngành công nghiệp Từ máy tính bảng,đến đồng hồ, ô tô và thậm chí cả tủ lạnh

1.2.2 Hệ điều hành macOS

- macOS X có thiết kế mô-đun nhằm giúp việc bổ sung các tính năng mới vào hệđiều hành trong tương lai dễ dàng hơn Nó chạy các ứng dụng UNIX cũng như cácứng dụng Mac cũ hơn Mac OS đi kèm với dòng máy tính iMac và Power

Macintosh của Apple Computer

Trang 8

- Dưới đây là bảng với thị phần iOS toàn cầu kể từ năm 2010:

Trang 10

PHẦN 2: NỘI DUNG CHI TIẾT

2.1 Quản lý file như thế nào?

- Tất cả các dữ liệu trên máy vi tính của bạn bao gồm hệ điều hành, chương trìnhứng dụng, và thông tin do bạn tạo ra đều tồn tại dưới dạng tập tin - File Các tập tinđược sắp xếp trong một hoặc nhiều thư mục

- Thư mục - Folder là một dạng tập tin đặc biệt có công dụng như là một ngănchứa, được dùng trong việc quản lý và sắp xếp các tập tin Bất kể bạn sử dụng hệđiều hành nào, máy vi tính của bạn sử dụng các thư mục để sắp xếp tất cả các tậptin và ứng dụng khác nhau mà nó có

Khái niệm về quản lý file?

- Trình quản lý tập tin cho phép người dùng tạo, đổi tên, di chuyển, in, sao chép,tìm kiếm và xóa các tệp tin và thư mục, cũng như thiết lập các quyền hạn (thuộctính) như lưu trữ, chỉ đọc, ẩn hoặc hệ thống và liên kết tệp Loại với các chươngtrình Người dùng cũng được cấp sẵn các công cụ để đổi tên và định dạng đĩa, quản

lý các thư mục để chia sẻ tập tin và để kết nối đến một ổ đĩa mạng

Macintosh đầu tiên và cũng tồn tại như một phần của GS / OS trên Apple II GS

Nó đã được viết lại hoàn toàn với việc phát hành Mac OS X vào năm 2001

-1

Theo truyền thống thì nó có từ thời Mac OS Cổ điển của những năm 1980 và

990, biểu tượng Finder là màn hình cười của máy tính, được gọi là logo HappyMac

-Tính năng của Finder

Trang 11

 Giống như Safari, Finder sử dụng các tab để cho phép người dùng xem

nhiều thư mục; các tab này có thể được kéo ra khỏi cửa sổ để biến chúngthành các cửa sổ riêng biệt

Hình 2.1.1 Finder sử dụng tab để cho người dùng xem nhiều thư mục

Trong Finder cổ điển, việc mở một thư mục mới sẽ mở ra vị trí trong mộtcửa sổ mới: Các cửa sổ của Finder bị 'khóa' để chúng chỉ hiển thị nội dungcủa một thư mục Nó cũng cho phép tùy chỉnh rộng rãi, người dùng có thểcung cấp cho các thư mục các biểu tượng tùy chỉnh phù hợp với nội dungcủa họ

Finder hiện đại sử dụng API đồ họa macOS để hiển thị bản xem trước củamột loạt tệp, chẳng hạn như hình ảnh, ứng dụng và tệp PDF Tính năngQuick Look cho phép người dùng nhanh chóng kiểm tra tài liệu và hình ảnhchi tiết hơn từ công cụ tìm kiếm bằng cách nhấn phím cách mà không cần

mở chúng trong một ứng dụng riêng biệt Người dùng có thể chọn cách xem

Trang 12

tệp, với các tùy chọn như biểu tượng lớn hiển thị bản xem trước của tệp,danh sách với các chi tiết như ngày tạo hoặc sửa đổi lần cuối,

2

.1.2 Về iOS

- iOS sử dụng ứng dụng Files để quản lý tập tin

Hình 2.1.2 iOS dùng ứng dụng Files để quản lý tập tin

-nhà phát triển toàn cầu năm 2017 của công ty, ứng dụng đã chính thức được công

bố tại hội nghị ngay sau đó

- Tệp cho phép người dùng duyệt các tệp cục bộ được lưu trữ trong ứng dụng, cũngnhư các tệp được lưu trữ trên các dịch vụ lưu trữ đám mây bao gồm iCloud, Box,Dropbox, Google Drive, OneDrive, v.v

Trang 13

Hình 2.1.3 Các dịch vụ lưu trữ đám mây

- Người dùng có thể lưu, mở và sắp xếp tệp, bao gồm cả việc đặt tệp vào thư mục

có cấu trúc và thư mục con

Hình 2.1.4 Lưu, mở và sắp xếp tệp, gồm cả việc đặt tệp vào thư mục có cấu trúc và thư mục con.

- Trên iPad, người dùng có thể kéo và thả tệp giữa ứng dụng Tệp và các ứng dụngkhác, nhưng trên iPhone, chức năng này chỉ giới hạn trong từng ứng dụng tươngứng Người dùng có thể thêm các thẻ có màu và có tên tùy chỉnh vào tệp, thêmchúng vào phần "Tags"

Trang 14

Hình 2.1.5 chức năng kéo, thả tệp giữa các ứng dụng giới hạn trong từng ứng dụng tương ứng.

- Thanh tìm kiếm liên tục ở trên cùng cho phép tìm kiếm các tệp bên trong các thưmục con, mặc dù nó không tìm kiếm trong các ứng dụng khác

Hình 2.1.6 Thanh tìm kiếm liên tục ở trên cùng.

- Chế độ xem danh sách cho phép phân loại tùy chọn theo kích thước hoặc ngàytháng

Khi nhấn và giữ một tệp, ứng dụng cung cấp một số tùy chọn, bao gồm "Sao

-chép", "Đổi tên", "Di chuyển", "Chia sẻ", "Thẻ", "Thông tin" và "Xóa" Các tệpđược lưu trữ trên các dịch vụ của bên thứ ba có thể được sao chép vào thiết bị đểtruy cập ngoại tuyến

Trang 15

Hình 2.1.7 Ứng dụng cung cấp một số tùy chọn khi nhấn và giữ tệp.

(địa chỉ bộ nhớ 0) và mở rộng lên trên Phân vùng hệ thống chứa một đống hệthống và một tập hợp các biến toàn cục, được mô tả trong hai phần tiếp theo

- Tất cả bộ nhớ bên ngoài phân vùng hệ thống đều có sẵn để cấp phát cho các ứngdụng hoặc các thành phần phần mềm khác Người dùng có thể mở nhiều ứng dụngcùng một lúc Khi một ứng dụng được khởi chạy, Hệ điều hành sẽ gán cho nó mộtphần bộ nhớ được gọi là phân vùng ứng dụng của nó Nói chung, một ứng dụng chỉ

sử dụng bộ nhớ có trong phân vùng ứng dụng của chính nó

Trang 16

Hình 2.2.1 Minh họa cách tổ chức bộ nhớ khi một số ứng dụng được mở cùng một lúc

- Khi ứng dụng của bạn được khởi chạy, Hệ điều hành sẽ phân bổ cho nó một phânvùng bộ nhớ được gọi là phân vùng ứng dụng của nó Phân vùng đó chứa các phânđoạn bắt buộc của mã của ứng dụng cũng như dữ liệu khác được liên kết với ứngdụng

Trang 17

Hình 2.2.2 Minh họa cách tổ chức chung của một phân vùng ứng dụng

vì một ứng dụng sẽ lấy (một cách không chủ ý) tất cả RAM đã phân bổ của nó,ngay cả khi nó không sử dụng phần lớn sau đó Một ứng dụng khác có thể bị thiếu

bộ nhớ nhưng không thể sử dụng bộ nhớ trống do ứng dụng khác "sở hữu"

- MultiFinder đã trở thành Finder sau này, bộ nhớ tạm thời là một nơi ứng dụng cóthể "mượn" RAM trống nằm ngoài đống của nó trong thời gian ngắn, nhưng điềunày không được các lập trình viên ưa chuộng nên phần lớn không giải quyết đượcvấn đề

Trang 18

Hình 2.2.3 Finder trên Macbook

passed by reference

*Cách thức hoạt động của ARC

- Mỗi lần mà bạn tạo 1 instance mới của một class, ARC cấp phát một vùng nhớ đểlưu trữ thông tin về cái instance đó Vùng nhớ đó nó sẽ giữ thông tin về loại củainstance cùng với bất kì những biến lưu trữ với instance đó Khi mà instance đókhông cần dùng đến nữa, ARC sẽ tự động giải phóng bộ nhớ được sử dụng bởiinstance đó vì thế vùng nhớ được giải phóng có thể cho những mục đích khác.Điều này đảm bảo rằng class instance không chiếm dụng vùng nhớ khi nó khônglàm cần dùng đến nữa Tuy nhiên nếu ARC đã deallocated một instance mà nó vẫnđược sử dụng, nó sẽ không còn có thể truy cập vào instance của properties hoặcinstance của methods Vì vậy nếu tiếp tục cố gắng truy cập vào chúng thì app sẽ bị

Trang 19

được sử dụng thì có biện pháp để khắc phục là ARC sẽ theo dõi có bao nhiêu thuộctính, hằng số, biến số hiện tại đang referring tới class instance đó ARC sẽ khônggiải phóng một instance ngay khi vẫn còn 1 strong reference Đến đây sẽ có 1 địnhnghĩa mới là strong reference Như vậy strong reference là gì?

* Strong reference là gì?

- Đó chính là hiện tượng khi 2 class có reference tới nhau và khi giải phóng classinstance thì một trong 2 instance vẫn còn tồn tại Cách giải quyết đó là xác địnhmối quan hệ giữa các class là weak hay unowned Còn nếu không giải phóng thì sẽxảy ra hiện tượng rò rỉ bộ nhớ

-không sử dụng nó nữa, một cách hoàn toàn thủ công Apple cung cấp một số

phương pháp để thực hiện điều này:

-Alloc: khởi tạo 1 đối tượng và yêu cầu quyền sở hữu đối tượng đó

Retain: Tăng retain count của đối tượng lên 1, gửi giữ 1 phương pháp đến 1 đốitượng đã tồn tại

Trang 20

Program (user) stack

CPU program counter

Kernel stack

CPU registers

Thông tin khác cần thiết để chạy trình

Các dữ liệu này tạo ra bối cảnh của TT, mỗi TT có bối cảnh riêng biệt Có rất

nhiều tiến trình (TT) được thực hiện đồng thời trên MacOS (đặc tính này còn gọi là

đa trình - multiprogramming hay đa nhiệm - multitasking) theo nguyên lí phân chiathời gian, mà tổng số các TT về logic là không có giới hạn Các TT có thể tạo racác TT mới, kết thúc các TT, đồng bộ các giai đoạn thực hiện TT, kiểm soát phảnứng với các sự kiện khác nhau

Trang 21

Người dùng có thể viết các chương trình thực hiện các thao tác rất tinh tế mà bảnthân kernel không cần có nhiều chức năng hơn là cần thiết Có thể đề cập tới một

số các chức năng, chẳng hạn các trình thông dịch, bộ soạn thảo thuộc lớp các

chương trình cấp người dùng và quan trọng hàng đầu là shell, là trình thông dịch

mà người dùng sử dụng ngay sau khi login vào hệ thống: shell thông dịch các từtrong dòng lệnh thành tên lệnh máy, phát sinh TT con và TT con thực hiện lệnhđưa vào, xử lí các từ còn lại trong dòng lệnh như các thông số của lệnh Shell thựchiện ba kiểu lệnh:

+ Lệnh là tệp có thể thực hiện được chứa mã máy phát sinh do bộ dịch tạo ra từ mãnguồn (chương trình C chẳng hạn)

+

+

Lệnh là tệp chứa một xâu các dòng lệnh của shell

Là các lệnh bên trong của shell Các lệnh bên trong này làm cho shell trở thànhmột ngôn ngữ lập trình rất mạnh trong MacOS

Shell là chương trình thuộc lớp người dùng, không phải là phần của kernel, chonên có thể dể dàng biến cải cho mỗi môi trường đặc thù Bản thân shell cũng có baloại khác nhau thích hợp cho các nhu cầu sử dụng khác nhau và hệ thống có thểchạy các shell đó đồng thời Sức mạnh của mỗi kiểu shell thể hiện ở khả năng lậptrình của mỗi kiểu Mỗi TT được thực hiện trong MacOS có một môi trường

(execution environment) thực hiện, bao gồm cả thư mục hiện hành Thư mục hiệnhành của TT là thư mục dùng để chỉ đường dẫn không bắt đầu bằng “/” Ngườidùng có thể thực hiện nhiều TT cùng một lúc, và các TT lại có thể tạo ra các TTkhác một cách động, và đồng bộ việc thực hiện các TT đó Đặc tính này tạo ra mộtmôi trường thực hiện chương trình rất mạnh trong MacOS

Kernel thực hiện vô số các thao tác cơ bản thay mặt cho các TT của nguời dùng để

hỗ trợ cho giao diện người dung, bao gồm:

- Kiểm soát việc thực hiện các TT gồm có: cho phép TT tạo TT mới, kết thúc TT,treo việc thực hiện và trao đổi thông điệp giữa các TT

- Lập thời gian biểu để các TT được thực hiện trên CPU Các TT chia sẻ CPU theophương thức phân chia thời gian, một TT sẽ bị treo sau khi thời gian phân bổ đãhết, kernel lấy TT khác đưa vào thực hiện Sau này kernel sẽ lại lựa chọn TT bịtreo để đưa vào thực hiện trở lại

Trang 22

- Cấp phát bộ nhớ cho TT đang thực hiện, cho phép TT chia sẻ không gian địa chỉcủa TT dưới những điều kiện nhất định, bảo vệ miền địa chỉ riêng của TT đối vớicác TT khác Nếu hệ thống chạy trong hoàn cảnh thiếu bộ nhớ, kernel sẽ giải

phóng bộ nhớ bằng cách ghi lại các TT tạm thời vào bộ nhớ dự phòng (còn gọi làthiết bị swap) Nếu toàn bộ TT được ghi vào swap, thì hệ MacOS gọi là hệ tráo đổi(swapping system); Nếu kernel ghi các trang của bộ nhớ lên swap, thì hệ đó gọi là

hệ lưu trang

- Cấp phát bộ nhớ thứ cấp để cất và tìm lại dữ liệu của người dùng có hiệu quả.Dịch vụ này cấu tạo nên hệ thống tệp Kernel cấp vùng nhớ thứ cấp cho tệp củangười dùng, khôi phục lại vùng nhớ, xây dựng cấu trúc tệp theo một cách thức hiểuđược, bảo vệ tệp của người dùng trước các truy nhập bất hợp pháp

2.3.2 Hệ điều hành iOS

Tiến trình iOS trải qua các trạng thái như sau:

Hình 2.3.2 Tiến trình trong iOS

a Trạng thái khởi tạo (Create):

- Khi mà một tiến trình mới được tạo, nó nhận vùng stack riêng của mình và vàotrạng thái mới (new) Tiến trình có thể di chuyển đến trạng thái điều chỉnh

(Modify) Nếu không có thay đổi cần thiết, thì tiến trình chuyển sang trạng tháithực thi (Execute)

b Trạng thái điều chỉnh (Modify):

Trang 23

- Không giống như hầu hết các hệ điều hành, iOS không tự động truyền tải cáctham số khởi tạo hoặc gán một giao tiếp đến một tiến trình mới khi nó được tạo,bởi vì nó cho rằng hầu hết các tiến trình không cẩn tài nguyên này Nếu một tiếntrình cần nguồn tại nguyên này, tuyến mà tạo nó có thể điều chỉnh để thêm vào.

c Trạng thái thức thi (Execute):

- Sau khi một tiến trình mới được tạo thành công và điều chỉnh, nó chuyển sangtrạng thái sẵn sàng (Ready) và vào trạng thái thực thi (Execute) Trong suốt trạngthái này, một tiến trình có thể truy cập CPU và chạy Trong suốt trạng thái thực thi,một tiến trình có thể truy cập CPU và chạy Trong suốt trạng thái thực thi, một tiếntrình có thể là một trong 3 trạng thái: sẵn sàng, chạy và rồi (Idle) Một tiến trình ởtrạng thái sẵn sàng sẽ đợi chuyển sang trạng thái truy cập CPU và bắt đầu thực thilệnh Một tiến trình ở trạng thái rỗi là đang ngủ, đợi sự | kiện bên ngoài xuất hiệntrước khi nó có thể chạy Một tiến trình chuyển từ trạng thái sẵn sàng sang trạngthái chạy khi mà nó được lập lịch để chạy

- Với đa tác vụ mà không ưu tiên (non-preemptive multitasking), một tiến trìnhđược lập lịch chạy trên CPU cho đến khi tạm ngừng hoặc kết thúc Một tiến trình

có thể tạm dừng theo 2 cách: nó có thể tự dưng bởi việc báo cho kernel, nó muốnnhường cho CPU và chuyển sang trạng thái sẵn sàng, và đợi đến lúc chạy lại Tiếntrình cũng có thể dừng bởi một hoạt động bên ngoài xảy ra Khi mà một tiến trìnhđợi một sự kiện, kernel hoàn toàn dừng tiến trình này và chuyển nó sang trạng tháirỗi Sau khi một sự kiện xảy ra rồi thì kernel chuyển tiến trình trở lại trạng thái sẵnsàng để đợi chạy lại

d Trạng thái kết thúc (Terminal):

- Trạng thái cuối cùng trong vòng đời của tiến trình là trạng thái kết thúc Một tiếntrình vào trạng thái kết thúc khi nó hoàn thành chức năng của mình và đóng lạihoặc khi một tiến trình khác đóng nó Khi một tiến trình bị đóng hoặc tự động, tiếntrình chuyển sang trạng thái chết (Dead) Tiến trình này trạng thái chết (không hoạtđộng) cho đến khi kernel thu hồi tất cả các tài nguyên của nó Sau khi tài nguyênđược thu hồi, tiến trình bị kết thúc thoát khỏi trạng thái chết và xóa khỏi hệ thống

Độ ưu tiên tiến trình iOS:

- iOS thực hiện chế độ ưu tiên để lập lịch các tiến trình trên CPU Tại thời điểmtạo, mỗi tiến trình được gán một trong 4 độ ưu tiên dựa trên mục đích của tiếntrình Độ ưu tiên là không đổi, chúng được gán khi một tiến trình được tạo và

không bao giờ thay đổi Các độ ưu tiên:

Ngày đăng: 10/12/2022, 09:47

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w