1. Trang chủ
  2. » Luận Văn - Báo Cáo

báo cáo bài tập lớn học phần hệ điều hành đề tài quản lí tiến trình trong windows

22 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Nội dung

“tiếntrình” là chương trình đang trong quá trình thực thi.Tiếntrình là đơn vị thực thi cơ sở trong hệ thống chia sẻ thờigian thực.Trong hệ điều hành đa chương trình tại mộtthời điểm luôn

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC PHENIKAA

BÁO CÁO BÀI TẬP LỚNHỌC PHẦN HỆ ĐIỀU HÀNH

ĐỀ TÀI:

Quản lí tiến trình trong Windows

Họ và tên sinh viên: Phạm Hùng Mạnh

Trang 2

MỤC LỤC

LỜI MỞ ĐẦU……….4

1 Chương 1:Khái niệm về tiến trình chương trình và các vấn đề chủ đề liên kết

quan……… 51.1 Tiến trình

Trang 3

Lời nói đầu

Trong thế giới kỹ thuật số ngày nay, hệ điều hànhWindows không chỉ là một nền tảng phổ biến cho việcchạy các ứng dụng và dịch vụ mà còn cung cấp một hệthống quản lý tiến trình mạnh mẽ.Tiến trình là gì? “tiếntrình” là chương trình đang trong quá trình thực thi.Tiếntrình là đơn vị thực thi cơ sở trong hệ thống chia sẻ thờigian thực.Trong hệ điều hành đa chương trình tại mộtthời điểm luôn tồn tại nhiều tiến trình nhưng nó lại cónhững tài nguyên hữu hạn.Vì vậy hệ điều hành phải cócơ chế cấp phát tài nguyên cho tiến trình theo cơ chếđịnh trước và cơ chế cho phép tiến trình trao đổi thôngtin với nhau.Như vậy, quản lý tiến trình là một phầnkhông thể thiếu của việc đảm bảo sự ổn định, hiệu suấtvà an toàn của máy tính

Trong tài liệu này, chúng ta sẽ khám phá sâu hơnvề cách Windows quản lý các tiến trình, từ cơ bản đếncác vấn đề phát sinh và các chiến lược tối ưu hóa.Tàiliệu gồm các nội dung chính sau:

- Chương 1: Khái niệm về tiến trình chương trình và cácvấn đề chủ đề liên kết quan: Bắt đầu bằng một sự giới thiệu vềkiến trúc cơ bản của tiến trình, tổng hợp các phép tổng quát đãdiễn ra trong quá trình tiến trình, và cách mà chương trình tạo

Trang 4

ra một tiến trình Cũng sẽ đề cập đến mối quan hệ giữa các tiếntrình và một số khái niệm cơ bản khác liên quan.

- Chương 2: Quản lý tiến trình chương trình với người quảnlý (cảm nhận): Giới thiệu khái niệm việc tiết lộ các chuyểnhướng, cách sử dụng trong quản lí tác vụ Từ đó hiểu được cáchmà hệ điều hành Windows quản lý tiến trình của máy tính

1.Chương 1:Khái niệm về tiến trình chươngtrình và các vấn đề chủ đề liên kết quan1.1 Tiến trình

1.1.1.Tiến trình ? Khái niệm về quản lí tiến trìnha.Tiến trình là gì)?

-Tiến trình là một khái niệm cơ bản trong hệ điều hành, đại diệncho việc thực thi một chương trình Mỗi tiến trình có một khônggian địa chỉ riêng biệt trong bộ nhớ, bao gồm mã máy (code),dữ liệu và bộ nhớ stack Nó cũng bao gồm các tài nguyên hệthống khác như tài nguyên I/O, bộ nhớ ảo và quyền truy cập.

b.Khái niệm về quản lí tiến trình

-Quản lý tiến trình là một khái niệm quan trọng trong lĩnh vựchệ điều hành Quản lý tiến trình đảm bảo sự chạy đồng thời vàhiệu quả của các tiến trình trong hệ thống Một tiến trình là mộtchương trình đang được thực thi Nó có thể là một ứng dụng,một tác vụ nền, hoặc một phần của hệ thống Mỗi tiến trình cómột trạng thái nhất định, bao gồm tiến trình đang chạy, tiếntrình đang chờ, tiến trình bị treo và tiến trình đã hoàn thành.

1.2 Các trạng thái của các tiến trình

Trang 5

Trong hệ thống máy tính và hệ điều hành, một tiến trình có thểtồn tại trong một số trạng thái khác nhau tùy thuộc vào hoạtđộng và tương tác với hệ thống Dưới đây là giới thiệu đầy đủ vềcác trạng thái của tiến trình :

- Running ( Đang chạy ):

+ Tiến trình đang được thực thi trên CPU và đang hoạtđộng hoặc thực hiện các tác vụ được giao.

+ Trong hệ thống đa nhiệm , có thể có nhiều tiến trìnhđang chạy đồng thời, và hệ điều hành sẽ chia thời gian CPU giữacác tiến trình theo quy tắc lập lịch.

- Suspended(Tạm dừng):

+ Tiến trình đã bị dừng và không thực thi.

+ Trong Windows,có thể có hai loại tạm dừng:tạm dừng chínhtiến trình process suspension),trong đó toàn bộ tiến trình bị tạm

Trang 6

dừng, và tạm dừng luồng thực thi(thread suspension),trong đóchỉ một luồng trong tiến trình bị tạm dừng.

1.3.Mối quan hệ giữa các tiến trình

Trong hệ điều hành Windows, các tiến trình quản lý không chỉtồn tại và hoạt động độc lập, mà còn có mối quan hệ tương tácvới nhau Dưới đây là một phân tích chi tiết về mối quan hệ giữacác tiến trình quản lý trong Windows:

- Tương tác thông qua hệ thống tài nguyên:

+ Các tiến trình trong Windows tương tác thông qua việc sửdụng và chia sẻ các tài nguyên hệ thống như bộ nhớ, tệp tin,thiết bị I/O, socket kết nối mạng và nhiều tài nguyên khác.+ Mỗi tiến trình có thể sử dụng tài nguyên đã được cấp phát chonó hoặc chia sẻ tài nguyên với các tiến trình khác thông qua cáccơ chế như gửi tin nhắn, sử dụng biến toàn cục hoặc chia sẻ bộnhớ.

- Giao tiếp thông qua cơ chế IPC (Inter-ProcessCommunication):

Trang 7

+ Các tiến trình trong Windows có thể giao tiếp với nhau thôngqua các cơ chế IPC như pipes, shared memory, message queuesvà synchronization primitives như mutexes và semaphores.+ Sử dụng IPC, các tiến trình có thể trao đổi dữ liệu, thông báovới nhau về trạng thái hoặc tiến độ của công việc, và đồng bộhóa hoạt động giữa chúng.

- Quan hệ cha con giữa các tiến trình:

+ Trong Windows, một tiến trình có thể tạo ra các tiến trìnhcon Tiến trình tạo ra được gọi là tiến trình cha và các tiến trìnhđược tạo ra được gọi là tiến trình con.

+ Tiến trình con thường kế thừa môi trường và tài nguyên củatiến trình cha và có thể thực thi các tác vụ cụ thể hoặc hoạtđộng như một đơn vị tổ chức của tiến trình cha.

- Tương tác thông qua các dịch vụ hệ thống:

+ Các tiến trình trong Windows có thể tương tác thông qua cácdịch vụ hệ thống được cung cấp bởi hệ điều hành hoặc các ứngdụng khác.

+ Các dịch vụ này có thể cung cấp các chức năng như quản lýtệp tin, mạng, bảo mật và nhiều dịch vụ hệ thống khác mà cáctiến trình có thể sử dụng để thực hiện công việc của mình.

- Tương tác qua các cơ chế đồng bộ hóa:

Trang 8

+ Windows cung cấp các cơ chế đồng bộ hóa như mutex,semaphore, event objects để đảm bảo rằng các tiến trình thựcthi một cách an toàn và đồng bộ trong môi trường đa nhiệm.+ Các tiến trình có thể sử dụng các cơ chế này để đồng bộ hóatruy cập vào tài nguyên chung, tránh gây ra tình trạng đua đầu(race conditions) và đảm bảo tính nhất quán của dữ liệu.Tóm lại, mối quan hệ giữa các tiến trình là một phần quan trọngcủa việc quản lý hệ thống và hoạt động một cách hiệu quảtrong một môi trường đa nhiệm như Windows Quan hệ này chophép các tiến trình làm việc cùng nhau, tương tác và chia sẻ tàinguyên để thực hiện các tác vụ phức tạp.

1.4.Khái niệm cơ bản khác liên quan

Ngoài ra, chúng ta cũng sẽ xem xét một số khái niệm cơ bảnkhác như tiến trình nền (background process), tiến trình chính(foreground process), tiến trình cha (parent process) và tiếntrình con (child process), để hiểu rõ hơn về mối quan hệ và tổchức của các tiến trình trong hệ thống:

- Tiến trình nền (Background process):

+ Tiến trình nền là các tiến trình hoạt động trong hệ thống màkhông tương tác trực tiếp với người dùng Chúng thường thựchiện các tác vụ phụ trợ hoặc dịch vụ hệ thống mà không cần sựcan thiệp của người dùng.

Ví dụ: Dịch vụ tự động cập nhật, tiến trình quản lý máy chủweb, tiến trình chạy trong nền để quản lý việc sao lưu dữ liệu.

- Tiến trình chính (Foreground process):

Trang 9

+ Tiến trình chính là các tiến trình mà người dùng tương táctrực tiếp thông qua giao diện người dùng của hệ thống Chúngthường đại diện cho các ứng dụng, cửa sổ hoặc chương trình màngười dùng đang sử dụng.

Ví dụ: Các ứng dụng văn phòng như Microsoft Word, trình duyệtweb như Google Chrome, hoặc trò chơi.

- Tiến trình cha (Parent process):

+ Tiến trình cha là tiến trình đã tạo ra một hoặc nhiều tiến trìnhkhác, được gọi là tiến trình con Tiến trình cha tạo ra và kiểmsoát tiến trình con.

+ Tiến trình cha thường chịu trách nhiệm về việc quản lý vàgiám sát hoạt động của tiến trình con, bao gồm việc cung cấpcác tài nguyên và thông tin môi trường.

- Tiến trình con (Child process):

+ Tiến trình con là các tiến trình được tạo ra bởi một tiến trìnhkhác, được gọi là tiến trình cha Tiến trình con thường thực hiệncác tác vụ cụ thể được giao bởi tiến trình cha.

+ Tiến trình con thường kế thừa môi trường và tài nguyên từtiến trình cha, nhưng có thể hoạt động độc lập sau khi được tạora.

Các khái niệm này làm nổi bật các quan hệ và tổ chức giữa cáctiến trình trong hệ thống máy tính, giúp hiểu rõ hơn về cách cáctiến trình tương tác và hoạt động trong môi trường đa nhiệm.

Trang 10

2 Chương 2 :Quản lý tiến trình chương trình với ngườiquản lý

Tiến trình quản lý chương trình với sự tham gia của người quảnlý là một khía cạnh quan trọng trong việc đảm bảo hoạt độnghiệu quả của các tiến trình và ứng dụng trong một tổ chức hoặcmôi trường làm việc Phân tích đầy đủ nội dung này sẽ baogồm:

2.1 Vai trò của người quản lí

Vai trò của người quản lý trong quản lý tiến trình chương trình làvô cùng quan trọng để đảm bảo rằng các hoạt động được thựchiện một cách suôn sẻ và hiệu quả Dưới đây là phân tích chitiết về vai trò của người quản lí:

- Lập kế hoạch (Planning):

+ Người quản lý phải thực hiện việc lập kế hoạch cho quản lýtiến trình chương trình bằng cách xác định các mục tiêu, phạmvi và nguồn lực cần thiết.

+ Kế hoạch cũng bao gồm việc đề ra các mục tiêu cụ thể, xácđịnh các bước cần thiết để đạt được mục tiêu đó, và xác địnhcác chuẩn mực đánh giá hiệu suất và thành công.

- Tổ chức (Organization):

Trang 11

+ Người quản lý phải tổ chức các tài nguyên, nhân lực và quytrình để thực hiện kế hoạch quản lý tiến trình chương trình.+ Điều này có thể bao gồm việc phân công nhiệm vụ, xác địnhvà phân bổ tài nguyên cần thiết, và thiết lập các quy trình làmviệc và quy định.

-Điều phối (Coordination):

+ Người quản lý phải điều phối hoạt động giữa các bộ phận vàcá nhân để đảm bảo rằng các tiến trình chương trình được thựchiện một cách liên tục và hợp nhất.

+ Điều này có thể bao gồm việc tổ chức các cuộc họp, giao tiếpthông tin và yêu cầu, và giám sát tiến độ và tiến triển của cáctiến trình.

- Giám sát (Monitoring):

+ Người quản lý phải giám sát hoạt động của các tiến trìnhchương trình để đảm bảo rằng chúng đang thực hiện theo kếhoạch và đạt được mục tiêu đề ra.

+ Điều này bao gồm việc theo dõi hiệu suất, tiến độ và chấtlượng của các tiến trình, cũng như phát hiện và giải quyết cácvấn đề và sự cố phát sinh.

- Đánh giá (Evaluation):

+ Người quản lý phải đánh giá hiệu suất và kết quả của các tiếntrình chương trình dựa trên các chuẩn mực và tiêu chí đã đặt ratrong quá trình lập kế hoạch.

Trang 12

+ Đánh giá này giúp người quản lý hiểu được những điểm mạnhvà điểm yếu của quy trình quản lý, và từ đó đề xuất các biệnpháp cải thiện và điều chỉnh cho tương lai.

Tóm lại, vai trò của người quản lý trong quản lý tiến trìnhchương trình là quan trọng để đảm bảo rằng các hoạt động diễnra một cách suôn sẻ và hiệu quả Họ phải đảm bảo rằng mọinguồn lực được sử dụng một cách hiệu quả và mục tiêu của tổchức được đạt được thông qua quản lý hiệu suất của các tiếntrình chương trình.

2.2.Quản lí và giám sát tiến trình

Quản lý và giám sát tiến trình chương trình là một phần quantrọng trong việc đảm bảo rằng các hoạt động được thực hiệnmột cách hiệu quả và đạt được mục tiêu đề ra Dưới đây là phântích chi tiết về Quản lí và giám sát tiến trình:

- Thiết lập mục tiêu (Setting objectives):

+ Người quản lý cần xác định các mục tiêu cụ thể và đo lườngđược của quản lý tiến trình chương trình Điều này có thể baogồm xác định mục tiêu về hiệu suất, tiến độ hoàn thành, chấtlượng sản phẩm, hoặc sự hài lòng của khách hàng.

+ Việc thiết lập mục tiêu cụ thể giúp tạo ra hướng đi rõ ràngcho quản lý và giúp đo lường được sự tiến triển và hiệu suất củacác tiến trình.

- Đo lường hiệu suất (Performance measurement):

+ Người quản lý cần sử dụng các phương tiện và công cụ để đolường hiệu suất của các tiến trình chương trình Điều này có thể

Trang 13

bao gồm sử dụng các chỉ số, thước đo, hoặc các công cụ phântích để đánh giá hiệu suất và tiến độ của các tiến trình.

+ Việc đo lường hiệu suất giúp người quản lý hiểu được nơi màcác vấn đề có thể phát sinh và cung cấp dữ liệu cần thiết đểđưa ra các quyết định cải thiện.

- Xác định yếu tố ảnh hưởng (Identifying influencingfactors):

+ Người quản lý cần xác định các yếu tố ảnh hưởng đến hoạtđộng của các tiến trình chương trình Điều này có thể bao gồmyếu tố nội bộ như quy trình làm việc, tài nguyên, và nhân lực,cũng như yếu tố bên ngoài như điều kiện thị trường, yêu cầucủa khách hàng, hoặc các rủi ro môi trường.

+ Việc xác định yếu tố ảnh hưởng giúp người quản lý hiểu rõcác vấn đề và thách thức mà các tiến trình có thể phải đối mặtvà đưa ra các biện pháp phòng ngừa và cải thiện.

- Thực hiện các biện pháp cải thiện (Implementingimprovement measures):

+ Dựa trên việc đo lường hiệu suất và xác định yếu tố ảnhhưởng, người quản lý cần thực hiện các biện pháp cải thiện đểtối ưu hóa hoạt động của các tiến trình chương trình.

+ Các biện pháp cải thiện có thể bao gồm việc điều chỉnh quytrình làm việc, cải thiện sử dụng tài nguyên, đào tạo nhân lực,áp dụng công nghệ mới, hoặc thay đổi chiến lược kinh doanh Tóm lại, quản lý và giám sát tiến trình chương trình đòi hỏingười quản lý phải có khả năng thiết lập mục tiêu, đo lườnghiệu suất, xác định các yếu tố ảnh hưởng, và thực hiện các biện

Trang 14

pháp cải thiện để đảm bảo rằng các tiến trình được thực hiệnmột cách hiệu quả và đạt được mục tiêu đề ra.

2.3 Điều phân phối và phân bổ tài nguyên

Điều phối và phân bổ tài nguyên là một phần quan trọng củaquản lý tiến trình chương trình, và nó liên quan đến việc quản lýcác nguồn lực như bộ nhớ, CPU, băng thông mạng và các tàinguyên khác để đảm bảo rằng các tiến trình hoạt động mộtcách hiệu quả và không gây ra cạnh tranh tài nguyên Dưới đâylà phân tích chi tiết về điều phân phối và phân bổ tài nguyên:

- Điều phối tài nguyên (Resource Coordination):

+ Người quản lý cần điều phối sự sử dụng của các tài nguyêngiữa các tiến trình chương trình để đảm bảo rằng mỗi tiến trìnhcó đủ tài nguyên để hoạt động một cách hiệu quả.

+ Điều này có thể bao gồm việc ưu tiên và phân phối tàinguyên dựa trên mức độ ưu tiên của các tiến trình, hoặc sửdụng các thuật toán điều phối như thuật toán lập lịch để quản lýtài nguyên.

- Phân bổ tài nguyên (Resource Allocation):

+ Người quản lý cần phân bổ các tài nguyên như bộ nhớ, CPU,và băng thông mạng cho mỗi tiến trình chương trình một cáchcân nhắc và hợp lý.

Trang 15

+ Việc phân bổ tài nguyên đòi hỏi sự đánh giá kỹ lưỡng về yêucầu và nhu cầu của từng tiến trình, cũng như sự đánh đổi giữahiệu suất và tiêu thụ tài nguyên.

- Quản lý cạnh tranh tài nguyên (Managing resourcecontention):

+ Người quản lý cần giải quyết các vấn đề liên quan đến cạnhtranh tài nguyên giữa các tiến trình chương trình, đặc biệt là khitài nguyên là hữu hạn.

+ Điều này có thể bao gồm việc sử dụng các chiến lược lập lịchhoặc thuật toán điều phối để quản lý và giải quyết các xung độttài nguyên.

- Tối ưu hóa hiệu suất và sử dụng tài nguyên(Optimizing performance and resource utilization):

+ Người quản lý cần tối ưu hóa hiệu suất của hệ thống bằngcách tối ưu hóa sử dụng tài nguyên Điều này có thể bao gồmviệc điều chỉnh cấu hình hệ thống, tối ưu hóa thuật toán, hoặcsử dụng các kỹ thuật tăng cường hiệu suất.

+ Mục tiêu là đảm bảo rằng mọi tài nguyên được sử dụng mộtcách hiệu quả để đáp ứng nhu cầu của các tiến trình mà khônglàm giảm hiệu suất toàn bộ hệ thống.

Tóm lại, điều phối và phân bổ tài nguyên là một phần quantrọng của quản lý tiến trình chương trình, đảm bảo rằng các tiếntrình hoạt động một cách hiệu quả và không gây ra cạnh tranhtài nguyên.

Ngày đăng: 24/07/2024, 16:22

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

TÀI LIỆU LIÊN QUAN

w