Uploaded by Trần Bi

Q7

advertisement
Q7-1. What is the difference between an application program and an operating
system? App ko trực tiếp thao tác với phần cứng
Một hệ điều hành là một chương trình phần mềm quản lý tài nguyên phần cứng và
phần mềm của máy tính, cung cấp các dịch vụ chung cho các chương trình máy tính. Nó
là phần mềm cốt lõi điều khiển hoạt động chung của máy tính và cho phép các chương
trình khác chạy trên nó.
Một chương trình ứng dụng, còn được gọi là ứng dụng hoặc app, là một chương trình
phần mềm được thiết kế để thực hiện một chức năng cụ thể hoặc một tập hợp các chức
năng trực tiếp cho người dùng. Ví dụ về các chương trình ứng dụng bao gồm các trình
xử lý văn bản, các bảng tính, trình duyệt web và trò chơi.
Tóm lại, sự khác biệt chính giữa một hệ điều hành và một chương trình ứng dụng là một
hệ điều hành là một chương trình phần mềm cốt lõi quản lý và điều khiển hoạt động
chung của máy tính, trong khi một chương trình ứng dụng là một chương trình phần
mềm cụ thể được thiết kế để thực hiện một tác vụ cụ thể hoặc một tập hợp các tác vụ
cho người dùng.
Q7-2. What are the components of an operating system?
Q7-3. What is the difference between monoprogramming and multiprogramming? Mono chỉ load đc 1
program trong ram
Monoprogramming và multiprogramming là hai phương pháp quản lý tài nguyên máy
tính khác nhau trong hệ điều hành. Sự khác biệt chính giữa chúng là cách xử lý thực thi
các chương trình.
Monoprogramming, còn được gọi là hệ thống đơn nhiệm, chỉ cho phép một chương
trình chạy tại một thời điểm. Hệ điều hành tải chương trình vào bộ nhớ và thực thi nó
cho đến khi hoàn thành hoặc gặp lỗi. Sau khi chương trình kết thúc, hệ điều hành có thể
tải và thực thi một chương trình khác. Hệ thống monoprogramming đơn giản và hiệu
quả, nhưng hạn chế khả năng đa nhiệm và có thể dẫn đến thời gian CPU không hoạt
động.
Multiprogramming, còn được gọi là hệ thống đa nhiệm, cho phép nhiều chương trình
chạy đồng thời trên cùng một hệ thống. Hệ điều hành sẽ tải nhiều chương trình vào bộ
nhớ và chia sẻ tài nguyên, chẳng hạn như CPU và bộ nhớ, để chương trình có thể chạy
đồng thời. Điều này tăng tốc độ thực thi các chương trình và tối ưu hóa sử dụng tài
nguyên. Hệ thống multiprogramming phức tạp hơn và đòi hỏi quản lý tài nguyên chặt
chẽ hơn so với hệ thống monoprogramming.
Q7-4. How is paging different from partitioning? Partitioning là chia bộ nhó thnah những phaanfk bằng
nhau và dùng bộ nhớ để nạp các chương trình, nập hết bộ nhớ, nạp liên tục
Paging nạp hết nhưng k liên tục
Paging và partitioning là hai kỹ thuật khác nhau được sử dụng trong quản lý bộ nhớ của
các hệ điều hành. Sự khác biệt chính giữa chúng là cách chia nhỏ bộ nhớ thành các
phần nhỏ hơn.
Partitioning, còn được gọi là fixed partitioning, chia bộ nhớ thành các phân vùng có kích
thước cố định trước. Mỗi phân vùng sẽ được sử dụng cho một chương trình cụ thể. Khi
một chương trình được thực thi, nó sẽ được tải vào phân vùng đó và sử dụng bộ nhớ
của phân vùng đó. Kỹ thuật partitioning đơn giản và dễ triển khai, nhưng nó dẫn đến
lãng phí bộ nhớ và giới hạn số lượng chương trình có thể chạy cùng một lúc.
Paging, còn được gọi là dynamic partitioning, chia bộ nhớ thành các trang (page) nhỏ
hơn và có kích thước động. Khi một chương trình được tải vào bộ nhớ, hệ điều hành sẽ
tạo các trang cho chương trình đó và tải các trang đó vào bộ nhớ. Các trang không cần
thiết của chương trình sẽ được giải phóng và trả lại cho hệ thống để sử dụng cho các
chương trình khác. Kỹ thuật paging cho phép tận dụng tối đa bộ nhớ và cho phép nhiều
chương trình chạy đồng thời.
Tóm lại, sự khác biệt chính giữa paging và partitioning là partitioning chia bộ nhớ thành
các phân vùng có kích thước cố định, trong khi paging chia bộ nhớ thành các trang nhỏ
hơn và có kích thước động.
Q7-5. How is demand paging more efficient than regular paging?
Các ưu điểm của demand paging so với regular paging là:
1. Tiết kiệm bộ nhớ: Regular paging yêu cầu tải toàn bộ chương trình và các trang
dữ liệu vào bộ nhớ trước khi bắt đầu thực thi, điều này sẽ dẫn đến việc sử dụng
bộ nhớ không cần thiết. Demand paging giúp tiết kiệm bộ nhớ bằng cách chỉ tải
các trang dữ liệu cần thiết để thực thi lệnh hiện tại.
2. Tăng tốc độ thực thi: Regular paging yêu cầu tải toàn bộ chương trình và các
trang dữ liệu vào bộ nhớ trước khi bắt đầu thực thi, điều này dẫn đến thời gian
chờ đợi lâu hơn để bắt đầu thực thi chương trình. Demand paging giúp tăng tốc
độ thực thi bằng cách cho phép chương trình bắt đầu thực thi ngay khi các trang
cần thiết đã được tải vào bộ nhớ.
3. Tăng khả năng đa nhiệm: Demand paging cho phép nhiều chương trình chạy
đồng thời trong cùng một thời điểm, vì chỉ có các trang dữ liệu cần thiết của mỗi
chương trình được tải vào bộ nhớ. Điều này giúp tăng khả năng đa nhiệm của hệ
thống.
Tóm lại, demand paging là kỹ thuật quản lý bộ nhớ hiệu quả hơn so với regular paging
bởi vì nó giảm thiểu việc sử dụng bộ nhớ không cần thiết và giúp tăng tốc độ thực thi
chương trình, đồng thời tăng khả năng đa nhiệm của hệ thống.
Q7-6. How is a program related to a job? How is a job related to a process? How is a
program related to a process?
Process nằm trong ram
Process là job đc đưa vào bộ nhớ chính”ram”
Program là chtr ch đc chạy
Program chạy
Q7-7. Where does a program reside? Where does a job reside? Where does a process
reside?
Q7-8. What is the difference between a job scheduler and a process scheduler?
Q7-9. Why does an operating system need queues?
Q7-10. How does deadlock differ from starvation?
Q7-7. Where does a program reside? Where does a job reside? Where does a process
reside?
Q7-8. What is the difference between a job scheduler and a process scheduler?
Download