Professional Documents
Culture Documents
2.11. Describe how you could obtain a statistical profile of the amount of
time a program spends executing different sections of its code. Discuss the
importance of obtaining such a statistical profile.
Mô tả cách bạn có thể có được một hồ sơ thống kê về lượng thời gian
một chương trình dành để thực thi các phần khác nhau của mã của nó. Thảo
luận về tầm quan trọng của việc có được một hồ sơ thống kê như vậy.
Đáp án :
Hồ sơ là một dạng phân tích chương trình động nhằm hỗ trợ tối ưu hóa
chương trình. Nó sử dụng nhiều kỹ thuật khác nhau để thu thập dữ liệu như
độ phức tạp về thời gian của một chương trình hoặc tần suất và thời lượng
của các lệnh gọi hàm. Một số ví dụ về các phương pháp lập hồ sơ sử dụng để
thu thập các thông tin này là:
ngắt phần cứng
bộ đếm hiệu suất
thiết bị đo mã
mô phỏng tập lệnh
Thông thường ngày nay máy tính cá nhân có chương trình biên dịch hệ
thống có thể cung cấp thông tin chi tiết về phần mềm và phần cứng của
nó. Để có được một cấu hình thống kê về lượng thời gian chương trình
dành cho việc thực thi các phần khác nhau của mã của nó, chúng tôi sẽ sử
dụng các phương pháp mô tả các ngắt phần cứng ở trên. Vì vậy, chúng tôi
sẽ phát hành các ngắt bộ định thời định kỳ và khi các ngắt được phân phối,
chúng tôi sẽ theo dõi và giám sát khối mã nào đang được thực thi. Kết quả
là chúng ta sẽ nhận được một hệ thống cấu hình sẽ giám sát mã đang được
thực thi mà sau này kỹ sư có thể sử dụng để tối ưu hóa các khối mã vốn
đang tiêu tốn nhiều tài nguyên CPU.
2.12 What are the advantages and disadvantages of using the same system-
call interface for manipulating both files and devices?
Ưu điểm và nhược điểm của việc sử dụng cùng một giao diện gọi hệ thống để
thao tác trên cả tệp và thiết bị là gì?
Đáp án:
Mỗi thiết bị có thể được truy cập như thể nó là một tệp trong hệ thống tệp. Vì
hầu hết hạt nhân giao dịch với các thiết bị thông qua giao diện tệp này, tương
đối dễ dàng để thêm trình điều khiển thiết bị mới bằng cách triển khai mã
dành riêng cho phần cứng để hỗ trợ giao diện tệp trừu tượng này. Do đó, điều
này có lợi cho sự phát triển của cả mã chương trình người dùng, mã này có
thể được viết để truy cập thiết bị và tệp theo cùng một cách và mã trình điều
khiển thiết bị, có thể được viết để hỗ trợ một API được xác định rõ.
Điểm bất lợi khi sử dụng cùng một giao diện là có thể khó nắm bắt được
chức năng của một số thiết bị trong ngữ cảnh của API truy cập tệp, do đó dẫn
đến mất chức năng hoặc giảm hiệu suất. Một số điều này có thể được khắc
phục bằng cách sử dụng ioctl operati cung cấp một giao diện mục đích chung
cho các quy trình để gọi các thao tác trên thiết bị.
2.13 Would it be possible for the user to develop a new command interpreter
using the system-call interface provided by the operating system?
Người dùng có thể phát triển một trình thông dịch lệnh mới sử dụng giao diện
cuộc gọi hệ thống do hệ điều hành cung cấp hay không?
Đáp án:
Được.
Có thể phát triển một trình thông dịch lệnh mới bằng cách sử dụng giao diện
cuộc gọi hệ thống do hệ điều hành cung cấp. Trình thông dịch lệnh cho phép
người dùng tạo và quản lý các quy trình, đồng thời xác định cách chúng giao
tiếp (chẳng hạn như thông qua các đường ống và tệp). Vì tất cả các chức năng
này đều có thể được chương trình cấp người dùng truy cập bằng các lệnh gọi
hệ thống, nên người dùng có thể phát triển một trình thông dịch dòng lệnh
mới.
2.14 Describe why Android uses ahead-of-time (AOT) rather than just-in-
time (JIT) compilation.
Mô tả lý do tại sao Android sử dụng tính năng vượt thời gian (AOT) thay vì
chỉ trong thời gian ngắn (JIT) biên dịch.
Đáp án:
2.15 What are the two models of interprocess communication? What are the
strengths and weaknesses of the two approaches?
Hai mô hình giao tiếp giữa các quy trình là gì? Là những gì
điểm mạnh và điểm yếu của hai cách tiếp cận?
Đáp án:
Một là mô hình truyền thông điệp và mô hình kia là mô hình chia sẻ bộ nhớ.
Điểm mạnh và điểm yếu của việc truyền thông điệp: thông điệp có thể được
trao đổi giữa các tiến trình trực tiếp hoặc gián tiếp thông qua một hộp thư
chung. nó hữu ích khi trao đổi lượng dữ liệu nhỏ hơn và dễ thực hiện hơn cho
giao tiếp giữa các máy tính. tuy nhiên, tốc độ của nó chậm hơn so với mô
hình chia sẻ bộ nhớ.
Điểm mạnh và điểm yếu của bộ nhớ dùng chung: nó cho phép tốc độ tối đa
và sự thuận tiện trong giao tiếp. tuy nhiên, trong các lĩnh vực bảo vệ và đồng
bộ hóa giữa các quy trình một số vấn đề tồn tại.