1. Điều gì KHÔNG phải là một loại giấy phép phần mềm mã nguồn mở phổ biến?
A. GPL.
B. MIT.
C. Apache.
D. Proprietary License (Giấy phép độc quyền).
2. Điều gì xảy ra nếu một dự án phần mềm mã nguồn mở trở nên `bỏ hoang` (abandoned)?
A. Nó sẽ tự động chuyển thành phần mềm độc quyền.
B. Cộng đồng có thể tiếp quản và tiếp tục phát triển dự án (fork).
C. Nó sẽ bị xóa bỏ hoàn toàn khỏi internet.
D. Nó vẫn tiếp tục được hỗ trợ bởi công ty ban đầu.
3. Lỗi bảo mật `Heartbleed` nổi tiếng liên quan đến phần mềm mã nguồn mở nào?
A. Linux kernel.
B. OpenSSL.
C. Apache web server.
D. MySQL database.
4. Điều gì KHÔNG phải là lợi ích của việc sử dụng phần mềm mã nguồn mở trong doanh nghiệp?
A. Giảm chi phí bản quyền.
B. Tăng cường bảo mật nhờ khả năng kiểm tra mã nguồn rộng rãi.
C. Được hỗ trợ kỹ thuật trực tiếp từ nhà cung cấp phần mềm.
D. Tính linh hoạt và khả năng tùy chỉnh cao.
5. Tại sao nhiều nhà phát triển thích làm việc với phần mềm mã nguồn mở?
A. Vì nó luôn được trả lương cao hơn.
B. Vì cơ hội học hỏi, hợp tác, và đóng góp vào các dự án có ý nghĩa.
C. Vì nó dễ dàng hơn phần mềm độc quyền.
D. Vì nó ít lỗi hơn phần mềm độc quyền.
6. Nhược điểm tiềm ẩn của phần mềm mã nguồn mở có thể là gì?
A. Giá thành cao.
B. Thiếu sự hỗ trợ chuyên nghiệp hoặc giao diện người dùng kém thân thiện trong một số trường hợp.
C. Tính bảo mật cao hơn phần mềm độc quyền.
D. Khả năng tùy biến hạn chế.
7. Mô hình phát triển `chợ` (bazaar) thường được liên kết với loại phần mềm nào?
A. Phần mềm độc quyền.
B. Phần mềm mã nguồn mở.
C. Phần mềm chia sẻ.
D. Phần mềm freeware.
8. Điều gì KHÔNG phải là một đặc điểm chung của phần mềm mã nguồn mở?
A. Mã nguồn có sẵn công khai.
B. Được phát triển bởi một công ty duy nhất.
C. Có thể được sửa đổi và phân phối lại.
D. Thường có cộng đồng hỗ trợ lớn.
9. Cộng đồng đóng vai trò như thế nào trong sự phát triển của phần mềm mã nguồn mở?
A. Không có vai trò gì, phần mềm được phát triển bởi các công ty.
B. Đóng vai trò quan trọng trong việc đóng góp mã, kiểm thử, báo cáo lỗi và hỗ trợ người dùng.
C. Chỉ đóng vai trò trong việc sử dụng phần mềm, không tham gia phát triển.
D. Chỉ chịu trách nhiệm về tài chính, không tham gia kỹ thuật.
10. Trong mô hình kinh doanh liên quan đến phần mềm mã nguồn mở, các công ty thường kiếm tiền bằng cách nào?
A. Bán bản quyền phần mềm.
B. Cung cấp dịch vụ hỗ trợ, tư vấn, và tùy chỉnh phần mềm.
C. Hạn chế sử dụng phần mềm cho mục đích thương mại.
D. Kiếm tiền bằng quảng cáo trong phần mềm.
11. Điều gì là quan trọng nhất cần xem xét khi sử dụng một thư viện hoặc framework mã nguồn mở trong dự án phát triển phần mềm?
A. Giá cả của thư viện/framework.
B. Giấy phép của thư viện/framework và sự phù hợp với dự án.
C. Số lượng tính năng của thư viện/framework.
D. Độ phổ biến của thư viện/framework trên thị trường.
12. Thuật ngữ `copyleft` trong giấy phép mã nguồn mở có nghĩa là gì?
A. Bản quyền thuộc về người viết mã đầu tiên.
B. Các tác phẩm phái sinh phải kế thừa giấy phép tương tự.
C. Mã nguồn không được phép sao chép.
D. Chỉ có thể sử dụng phần mềm cho mục đích phi thương mại.
13. Giấy phép MIT là loại giấy phép mã nguồn mở nào?
A. Giấy phép copyleft mạnh mẽ.
B. Giấy phép cho phép sử dụng thương mại nhưng phải trả phí.
C. Giấy phép permissive, cho phép sử dụng, sửa đổi và phân phối lại với rất ít hạn chế.
D. Giấy phép chỉ dành cho mục đích phi thương mại.
14. Ưu điểm chính của phần mềm mã nguồn mở là gì?
A. Độc quyền và kiểm soát hoàn toàn bởi một công ty.
B. Chi phí thường thấp hoặc miễn phí và tính linh hoạt cao.
C. Khả năng bảo mật kém do mã nguồn công khai.
D. Ít cộng đồng hỗ trợ và phát triển.
15. Trong ngữ cảnh bảo mật phần mềm, việc công khai mã nguồn có thể mang lại lợi ích gì?
A. Làm tăng nguy cơ bị tấn công vì ai cũng có thể xem mã.
B. Cho phép cộng đồng rộng lớn kiểm tra và phát hiện lỗ hổng bảo mật nhanh chóng hơn.
C. Không ảnh hưởng gì đến bảo mật.
D. Giảm thiểu việc cập nhật bảo mật.
16. Phần mềm mã nguồn mở là gì?
A. Phần mềm chỉ có thể được sử dụng bởi người tạo ra nó.
B. Phần mềm mà mã nguồn được công khai và có thể được sửa đổi và phân phối lại.
C. Phần mềm được bán với giá cao để đảm bảo chất lượng.
D. Phần mềm chỉ hoạt động trên một hệ điều hành cụ thể.
17. Tại sao phần mềm mã nguồn mở thường được coi là có khả năng tùy biến cao?
A. Vì nó được thiết kế sẵn với nhiều tính năng phức tạp.
B. Vì người dùng có thể truy cập và sửa đổi mã nguồn để phù hợp với nhu cầu cụ thể.
C. Vì nó luôn được cập nhật phiên bản mới nhất.
D. Vì nó chỉ hoạt động trên một số hệ điều hành nhất định.
18. Khái niệm `vendor lock-in` (khóa chặt vào nhà cung cấp) thường liên quan nhiều hơn đến loại phần mềm nào?
A. Phần mềm mã nguồn mở.
B. Phần mềm độc quyền.
C. Cả hai loại phần mềm đều giống nhau.
D. Không liên quan đến loại phần mềm.
19. Ứng dụng nào sau đây KHÔNG phải là một ví dụ điển hình của phần mềm mã nguồn mở?
A. Firefox (trình duyệt web).
B. WordPress (hệ quản trị nội dung).
C. Android (hệ điều hành di động).
D. Skype (ứng dụng gọi điện video).
20. Công ty nào nổi tiếng với hệ điều hành mã nguồn mở Linux?
A. Microsoft.
B. Apple.
C. Không có công ty nào sở hữu Linux, nó được phát triển bởi cộng đồng.
D. Adobe.
21. Tại sao tính minh bạch được coi là một ưu điểm của phần mềm mã nguồn mở?
A. Vì mã nguồn được giữ bí mật.
B. Vì người dùng có thể kiểm tra mã nguồn để đảm bảo không có backdoor hoặc mã độc hại.
C. Vì phần mềm mã nguồn mở luôn miễn phí.
D. Vì nó dễ dàng sử dụng hơn phần mềm độc quyền.
22. Giấy phép GPL (GNU General Public License) là loại giấy phép mã nguồn mở nào?
A. Giấy phép cho phép sử dụng độc quyền.
B. Giấy phép copyleft, yêu cầu các tác phẩm phái sinh cũng phải được cấp phép theo GPL.
C. Giấy phép cho phép sử dụng thương mại nhưng không được sửa đổi.
D. Giấy phép không cho phép phân phối lại.
23. Trong phát triển phần mềm mã nguồn mở, quy trình `pull request` (yêu cầu kéo) thường được sử dụng để làm gì?
A. Yêu cầu người dùng trả tiền để sử dụng phần mềm.
B. Đề xuất các thay đổi mã nguồn từ một nhánh phát triển vào nhánh chính để xem xét và hợp nhất.
C. Yêu cầu quyền truy cập vào mã nguồn của dự án.
D. Báo cáo lỗi bảo mật cho nhà phát triển.
24. Một tổ chức nên cân nhắc điều gì khi lựa chọn giữa phần mềm mã nguồn mở và phần mềm độc quyền?
A. Chỉ nên chọn phần mềm độc quyền để đảm bảo chất lượng.
B. Chỉ nên chọn phần mềm mã nguồn mở để tiết kiệm chi phí.
C. Cần cân nhắc các yếu tố như chi phí, tính năng, khả năng tùy chỉnh, hỗ trợ, và yêu cầu bảo mật.
D. Không cần cân nhắc gì, phần mềm nào phổ biến hơn thì chọn.
25. Trong bối cảnh phần mềm mã nguồn mở, `forking` nghĩa là gì?
A. Hành động hợp nhất hai dự án phần mềm.
B. Tạo ra một nhánh phát triển mới, độc lập từ một dự án hiện có.
C. Xóa bỏ một phần mã nguồn của dự án.
D. Đóng góp mã nguồn trở lại dự án gốc.
26. Ví dụ nào sau đây là phần mềm mã nguồn mở?
A. Microsoft Office.
B. Adobe Photoshop.
C. LibreOffice.
D. macOS.
27. So sánh giấy phép permissive (ví dụ MIT) và copyleft (ví dụ GPL), điểm khác biệt chính là gì?
A. Giấy phép permissive miễn phí, copyleft thì phải trả phí.
B. Giấy phép permissive hạn chế sử dụng thương mại, copyleft thì không.
C. Giấy phép permissive cho phép tác phẩm phái sinh có thể không cần mã nguồn mở, copyleft yêu cầu tác phẩm phái sinh phải mã nguồn mở.
D. Giấy phép permissive dễ sử dụng hơn copyleft.
28. Làm thế nào để đóng góp vào một dự án phần mềm mã nguồn mở?
A. Chỉ bằng cách trả tiền cho dự án.
B. Thông qua việc gửi báo cáo lỗi, đóng góp mã, viết tài liệu, hoặc tham gia thảo luận cộng đồng.
C. Không thể đóng góp nếu không phải là thành viên sáng lập.
D. Chỉ bằng cách sử dụng phần mềm.
29. So sánh phần mềm mã nguồn mở và phần mềm độc quyền, điểm khác biệt chính nằm ở đâu?
A. Giá cả.
B. Tính năng.
C. Khả năng truy cập mã nguồn.
D. Hiệu suất.
30. Trong lĩnh vực dữ liệu lớn và trí tuệ nhân tạo, phần mềm mã nguồn mở đóng vai trò như thế nào?
A. Không có vai trò gì, chủ yếu dùng phần mềm độc quyền.
B. Đóng vai trò then chốt, cung cấp các công cụ và nền tảng quan trọng cho phân tích dữ liệu và phát triển AI.
C. Chỉ được sử dụng cho mục đích học thuật, không dùng trong thực tế.
D. Chỉ giới hạn ở việc thu thập dữ liệu, không dùng để phân tích.