Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phần Mềm Mã Nguồn Mở - Đề 04 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.
Câu 1: Triết lý cốt lõi của phần mềm mã nguồn mở (PMNM) là gì?
- A. Giữ bí mật mã nguồn để đảm bảo tính bảo mật.
- B. Tối đa hóa lợi nhuận cho nhà phát triển bằng cách hạn chế quyền truy cập.
- C. Cho phép tự do truy cập, sử dụng, sửa đổi và phân phối lại mã nguồn.
- D. Chỉ cho phép sử dụng miễn phí nhưng cấm sửa đổi mã nguồn.
Câu 2: Giấy phép mã nguồn mở nào sau đây là "giấy phép copyleft mạnh", yêu cầu mọi phần mềm phái sinh phải được cấp phép dưới cùng giấy phép?
- A. GNU General Public License (GPL)
- B. MIT License
- C. Apache License 2.0
- D. BSD License
Câu 3: Ưu điểm nào sau đây KHÔNG phải là lợi ích chính của việc sử dụng phần mềm mã nguồn mở?
- A. Chi phí thấp hoặc miễn phí sử dụng.
- B. Tính minh bạch và khả năng kiểm tra mã nguồn.
- C. Cộng đồng hỗ trợ lớn và khả năng tùy biến cao.
- D. Được hỗ trợ độc quyền và chịu trách nhiệm hoàn toàn bởi một công ty duy nhất.
Câu 4: Hãy xem xét tình huống: Một công ty muốn xây dựng một phần mềm thương mại dựa trên một thư viện mã nguồn mở. Loại giấy phép nào sau đây là phù hợp nhất để họ có thể tích hợp thư viện mà không cần phải công khai mã nguồn của phần mềm thương mại của mình?
- A. GNU GPL (General Public License)
- B. MIT License hoặc BSD License
- C. GNU AGPL (Affero General Public License)
- D. Giấy phép Creative Commons
Câu 5: Mô hình phát triển "chợ" (bazaar) trong PMNM khác biệt như thế nào so với mô hình "nhà thờ lớn" (cathedral) của phần mềm độc quyền?
- A. Mô hình chợ tập trung vào phát hành phiên bản ổn định, còn nhà thờ lớn ưu tiên tính năng mới.
- B. Mô hình chợ có cấu trúc quản lý tập trung, còn nhà thờ lớn phân tán.
- C. Mô hình chợ dựa trên sự tham gia rộng rãi của cộng đồng, còn nhà thờ lớn thường do một nhóm nhỏ phát triển.
- D. Mô hình chợ chỉ phù hợp cho dự án nhỏ, còn nhà thờ lớn cho dự án quy mô lớn.
Câu 6: "Forking" trong phát triển PMNM nghĩa là gì?
- A. Quá trình hợp nhất các nhánh phát triển khác nhau vào dự án chính.
- B. Tạo ra một dự án mới độc lập từ mã nguồn của một dự án hiện có.
- C. Kiểm tra và đánh giá chất lượng mã nguồn của dự án.
- D. Phân phối phần mềm đến người dùng cuối.
Câu 7: Điều gì KHÔNG phải là một yếu tố thúc đẩy sự thành công của một dự án PMNM?
- A. Cộng đồng người dùng và nhà phát triển tích cực.
- B. Giấy phép mã nguồn mở rõ ràng và phù hợp.
- C. Hạ tầng phát triển và quản lý dự án hiệu quả.
- D. Kiểm soát chặt chẽ và hạn chế sự tham gia của bên ngoài.
Câu 8: So sánh giấy phép MIT và giấy phép GNU GPL, điểm khác biệt chính về mức độ ràng buộc là gì?
- A. MIT ít ràng buộc hơn, cho phép sử dụng trong phần mềm độc quyền mà không cần chia sẻ mã nguồn, GPL yêu cầu chia sẻ mã nguồn (copyleft).
- B. GPL ít ràng buộc hơn, MIT yêu cầu chia sẻ mã nguồn.
- C. Cả hai đều có mức độ ràng buộc tương đương nhau.
- D. MIT chỉ áp dụng cho phần mềm phi thương mại, GPL cho cả thương mại và phi thương mại.
Câu 9: Trong ngữ cảnh bảo mật phần mềm, tính minh bạch của mã nguồn mở mang lại lợi ích gì?
- A. Giảm thiểu nguy cơ bị tấn công mạng vì mã nguồn được bảo vệ.
- B. Cho phép nhiều người kiểm tra và phát hiện lỗ hổng bảo mật nhanh chóng hơn.
- C. Tăng cường bảo mật bằng cách che giấu logic hoạt động của phần mềm.
- D. Không ảnh hưởng đến bảo mật, vì bảo mật phụ thuộc vào cách sử dụng.
Câu 10: Hãy xác định một ví dụ về phần mềm mã nguồn mở đóng vai trò nền tảng trong hạ tầng internet hiện nay.
- A. Microsoft Office
- B. Adobe Photoshop
- C. Linux
- D. macOS
Câu 11: Điều gì KHÔNG phải là một thách thức tiềm ẩn khi sử dụng PMNM trong doanh nghiệp?
- A. Chi phí bản quyền cao.
- B. Vấn đề tương thích và tích hợp với hệ thống hiện có.
- C. Thiếu hỗ trợ kỹ thuật chuyên nghiệp từ nhà cung cấp duy nhất.
- D. Rủi ro bảo mật tiềm ẩn nếu không được quản lý đúng cách.
Câu 12: Mô hình kinh doanh "mã nguồn mở như một dịch vụ" (Open Source as a Service - OSaaS) hoạt động như thế nào?
- A. Bán giấy phép sử dụng phần mềm mã nguồn mở cho doanh nghiệp.
- B. Cung cấp phần mềm mã nguồn mở dưới dạng dịch vụ đám mây, thu phí sử dụng dịch vụ.
- C. Phát triển phần mềm mã nguồn mở theo yêu cầu của từng khách hàng.
- D. Cung cấp hỗ trợ kỹ thuật cho phần mềm mã nguồn mở miễn phí.
Câu 13: Tổ chức nào sau đây đóng vai trò quan trọng trong việc thúc đẩy và bảo vệ PMNM?
- A. Microsoft Corporation
- B. Apple Inc.
- C. Free Software Foundation
- D. Business Software Alliance (BSA)
Câu 14: Trong ngữ cảnh quản lý dự án PMNM, "governance" (quản trị) đề cập đến điều gì?
- A. Quy trình kiểm thử và đảm bảo chất lượng mã nguồn.
- B. Các quy tắc và cơ chế để đưa ra quyết định và quản lý dự án cộng đồng.
- C. Hệ thống theo dõi lỗi và quản lý yêu cầu tính năng.
- D. Phương pháp phân phối và triển khai phần mềm.
Câu 15: Hãy nêu một ví dụ về hệ điều hành mã nguồn mở phổ biến.
- A. Ubuntu Linux
- B. Windows 11
- C. macOS Ventura
- D. iOS 16
Câu 16: "Copyleft" trong giấy phép PMNM nhằm mục đích chính là gì?
- A. Cho phép sử dụng phần mềm trong các sản phẩm độc quyền.
- B. Hạn chế hoàn toàn việc sửa đổi và phân phối lại phần mềm.
- C. Đảm bảo rằng các phiên bản phái sinh của phần mềm cũng phải là mã nguồn mở.
- D. Tối đa hóa lợi nhuận cho tác giả gốc của phần mềm.
Câu 17: Trong phát triển PMNM, "contribution" (đóng góp) có thể bao gồm những hình thức nào?
- A. Viết mã nguồn mới.
- B. Báo cáo lỗi và đề xuất tính năng.
- C. Đóng góp tài liệu và dịch thuật.
- D. Tất cả các hình thức trên.
Câu 18: Điều gì KHÔNG phải là một đặc điểm của giấy phép "permissive" (cho phép) trong PMNM?
- A. Ít ràng buộc đối với người sử dụng và phân phối lại.
- B. Yêu cầu các phần mềm phái sinh phải sử dụng cùng giấy phép.
- C. Cho phép sử dụng trong cả phần mềm mã nguồn mở và độc quyền.
- D. Ví dụ: MIT, BSD, Apache License.
Câu 19: Tại sao nhiều tổ chức chính phủ và phi lợi nhuận ưu tiên sử dụng PMNM?
- A. Tính minh bạch, chi phí thấp và khả năng tùy biến phù hợp với mục tiêu phục vụ cộng đồng.
- B. Yêu cầu bắt buộc từ luật pháp quốc tế.
- C. Do thiếu nguồn lực tài chính để mua phần mềm độc quyền.
- D. Để thể hiện sự ủng hộ đối với phong trào mã nguồn mở.
Câu 20: "Vendor lock-in" (sự phụ thuộc vào nhà cung cấp) là gì và PMNM có thể giúp giảm thiểu vấn đề này như thế nào?
- A. Vendor lock-in là tình trạng phần mềm bị khóa bởi bản quyền.
- B. Vendor lock-in là việc nhà cung cấp phần mềm kiểm soát hoàn toàn mã nguồn.
- C. Vendor lock-in là sự phụ thuộc vào một nhà cung cấp cụ thể, PMNM giúp giảm thiểu do tính mở và khả năng chuyển đổi.
- D. Vendor lock-in là vấn đề bảo mật của phần mềm độc quyền.
Câu 21: Hãy so sánh mô hình cấp phép "dual-licensing" (cấp phép kép) trong PMNM với mô hình "single-licensing" (cấp phép đơn).
- A. Cấp phép đơn cho phép sử dụng cho cả mục đích thương mại và phi thương mại, cấp phép kép chỉ cho phi thương mại.
- B. Cấp phép kép cung cấp lựa chọn giấy phép khác nhau (ví dụ GPL và thương mại), cấp phép đơn chỉ có một loại.
- C. Cấp phép đơn dễ quản lý hơn cấp phép kép.
- D. Cấp phép kép luôn miễn phí, cấp phép đơn luôn trả phí.
Câu 22: "Mã nguồn mở giả" (fauxpen source) là gì?
- A. Phần mềm mã nguồn mở nhưng chất lượng kém.
- B. Phần mềm mã nguồn mở nhưng không có cộng đồng hỗ trợ.
- C. Phần mềm được quảng bá là mã nguồn mở nhưng giấy phép hoặc thực tế sử dụng lại hạn chế các quyền tự do cốt lõi.
- D. Phần mềm mã nguồn mở được phát triển bởi một công ty thương mại.
Câu 23: Trong một dự án PMNM cộng đồng, vai trò của "maintainer" (người bảo trì) là gì?
- A. Chịu trách nhiệm chính trong việc quản lý, phát triển và duy trì dự án.
- B. Chỉ tham gia vào việc kiểm thử và báo cáo lỗi.
- C. Chủ yếu đóng góp mã nguồn mới.
- D. Quản lý tài chính và gây quỹ cho dự án.
Câu 24: "Open core" (lõi mở) là một mô hình kinh doanh PMNM như thế nào?
- A. Phát hành toàn bộ phần mềm dưới giấy phép mã nguồn mở.
- B. Phát hành phiên bản "lõi" dưới mã nguồn mở và các tính năng "cao cấp" dưới giấy phép độc quyền.
- C. Chỉ phát hành mã nguồn của các thư viện phụ trợ, không phải ứng dụng chính.
- D. Thu phí truy cập vào mã nguồn nhưng cho phép sử dụng miễn phí.
Câu 25: Hãy nêu một ví dụ về cơ sở dữ liệu mã nguồn mở phổ biến.
- A. Microsoft SQL Server
- B. Oracle Database
- C. IBM DB2
- D. MySQL
Câu 26: Trong phát triển PMNM, "pull request" (yêu cầu kéo) dùng để làm gì?
- A. Yêu cầu cấp quyền truy cập vào kho mã nguồn.
- B. Đề xuất các thay đổi mã nguồn từ một nhánh phát triển để hợp nhất vào nhánh chính.
- C. Báo cáo lỗi bảo mật nghiêm trọng.
- D. Yêu cầu hỗ trợ kỹ thuật từ cộng đồng.
Câu 27: Điều gì KHÔNG phải là một lợi ích của việc tham gia vào cộng đồng PMNM?
- A. Học hỏi và nâng cao kỹ năng.
- B. Xây dựng danh tiếng và mở rộng mạng lưới quan hệ.
- C. Đảm bảo được trả lương cao cho mọi đóng góp.
- D. Đóng góp vào các dự án có ý nghĩa và tác động.
Câu 28: Hãy xem xét tình huống: Một doanh nghiệp muốn sử dụng PMNM nhưng lo ngại về vấn đề pháp lý liên quan đến giấy phép. Họ nên làm gì để giảm thiểu rủi ro?
- A. Tìm hiểu kỹ về các loại giấy phép PMNM và tuân thủ các điều khoản.
- B. Chỉ sử dụng phần mềm mã nguồn mở không có giấy phép.
- C. Không cần quan tâm đến giấy phép vì PMNM là miễn phí.
- D. Yêu cầu nhà cung cấp PMNM chịu trách nhiệm pháp lý hoàn toàn.
Câu 29: "Inner source" (nguồn nội bộ) là gì và nó khác biệt như thế nào so với PMNM truyền thống?
- A. Inner source là phần mềm mã nguồn mở nhưng chỉ dành cho mục đích phi thương mại.
- B. Inner source là phần mềm mã nguồn mở nhưng mã nguồn được mã hóa.
- C. Inner source giống hệt PMNM truyền thống, chỉ khác tên gọi.
- D. Inner source áp dụng các nguyên tắc PMNM trong phạm vi nội bộ tổ chức, không phải cộng đồng công cộng.
Câu 30: Trong tương lai, vai trò của PMNM dự kiến sẽ như thế nào trong bối cảnh công nghệ ngày càng phát triển?
- A. Giảm dần do phần mềm độc quyền ngày càng mạnh mẽ.
- B. Không thay đổi nhiều so với hiện tại.
- C. Tiếp tục tăng lên và trở thành nền tảng cho nhiều đổi mới công nghệ.
- D. Chỉ giới hạn trong các lĩnh vực phi lợi nhuận.