1. Trong mô hình kinh doanh 'open core′ (lõi mở) liên quan đến phần mềm mã nguồn mở, doanh nghiệp thường cung cấp gì?
A. Toàn bộ phần mềm dưới dạng mã nguồn mở và miễn phí.
B. Một phiên bản lõi của phần mềm là mã nguồn mở, còn các tính năng nâng cao được cung cấp dưới dạng độc quyền và có phí.
C. Phần mềm mã nguồn mở chỉ dành cho mục đích phi thương mại, còn phiên bản thương mại là độc quyền.
D. Chỉ cung cấp dịch vụ hỗ trợ kỹ thuật cho phần mềm mã nguồn mở.
2. Đặc điểm cốt lõi nhất của phần mềm mã nguồn mở là gì?
A. Mã nguồn được giữ bí mật và chỉ nhà phát triển mới có quyền truy cập.
B. Người dùng phải trả phí để xem và sửa đổi mã nguồn.
C. Mã nguồn được công khai và người dùng có quyền tự do sử dụng, nghiên cứu, sửa đổi và phân phối.
D. Phần mềm chỉ được sử dụng miễn phí cho mục đích phi thương mại.
3. Khái niệm 'Freedom Zero′ trong định nghĩa phần mềm tự do (free software) đề cập đến quyền tự do nào?
A. Quyền tự do phân phối lại bản sao của phần mềm.
B. Quyền tự do nghiên cứu cách chương trình hoạt động và điều chỉnh nó cho phù hợp với nhu cầu của bạn.
C. Quyền tự do chạy chương trình cho bất kỳ mục đích nào.
D. Quyền tự do cải tiến chương trình và phát hành các phiên bản cải tiến ra công chúng.
4. Nhược điểm tiềm ẩn của việc sử dụng phần mềm mã nguồn mở có thể là gì?
A. Thiếu sự đổi mới và phát triển nhanh chóng do cộng đồng phát triển chậm chạp.
B. Khó khăn trong việc tìm kiếm hỗ trợ kỹ thuật chuyên nghiệp và kịp thời khi gặp sự cố.
C. Chi phí bản quyền cao hơn so với phần mềm độc quyền.
D. Tính bảo mật kém do mã nguồn mở công khai cho tất cả mọi người.
5. So với phần mềm độc quyền, phần mềm mã nguồn mở có thể mang lại lợi ích gì về khả năng tiếp cận và tính bao trùm?
A. Ít lợi ích hơn, vì phần mềm độc quyền thường có giao diện thân thiện và dễ sử dụng hơn.
B. Không có sự khác biệt đáng kể.
C. Lợi ích lớn hơn, vì chi phí thấp hoặc miễn phí giúp nhiều người có thể tiếp cận và sử dụng, đồng thời có thể tùy chỉnh cho các nhu cầu đặc biệt.
D. Lợi ích chỉ giới hạn ở các quốc gia phát triển, còn ở các nước đang phát triển thì không đáng kể.
6. Điều gì KHÔNG đúng về cộng đồng phát triển phần mềm mã nguồn mở?
A. Cộng đồng thường bao gồm các nhà phát triển tình nguyện từ khắp nơi trên thế giới.
B. Quyết định về hướng phát triển phần mềm thường được đưa ra một cách dân chủ và công khai.
C. Cộng đồng hoạt động theo mô hình phân cấp chặt chẽ, với một nhóm lãnh đạo duy nhất.
D. Sự đóng góp từ cộng đồng giúp tăng tốc độ phát triển và cải thiện chất lượng phần mềm.
7. Lợi ích nào sau đây KHÔNG thường được liên kết với việc sử dụng phần mềm mã nguồn mở trong giáo dục?
A. Tiết kiệm chi phí bản quyền phần mềm.
B. Tăng cường khả năng tùy biến và điều chỉnh phần mềm cho phù hợp với chương trình giảng dạy.
C. Cung cấp cơ hội cho sinh viên tìm hiểu về mã nguồn và tham gia vào cộng đồng phát triển.
D. Đảm bảo hỗ trợ kỹ thuật 24∕7 từ nhà cung cấp phần mềm.
8. Điều gì KHÔNG phải là một yếu tố thúc đẩy sự phát triển mạnh mẽ của phần mềm mã nguồn mở?
A. Sự phát triển của Internet và các nền tảng cộng tác trực tuyến.
B. Nhu cầu về phần mềm chi phí thấp và linh hoạt.
C. Sự hạn chế về khả năng tùy biến của phần mềm độc quyền.
D. Sự gia tăng kiểm soát độc quyền của các tập đoàn phần mềm lớn.
9. Giấy phép GPL (GNU General Public License) được xem là giấy phép 'copyleft′. Điều này có nghĩa là gì?
A. Cho phép sử dụng mã nguồn mở trong phần mềm độc quyền mà không cần chia sẻ mã nguồn.
B. Yêu cầu bất kỳ phần mềm phái sinh nào từ phần mềm GPL cũng phải được phát hành dưới giấy phép GPL tương tự.
C. Cấm hoàn toàn việc sử dụng phần mềm GPL cho mục đích thương mại.
D. Chỉ cho phép sửa đổi mã nguồn bởi tác giả gốc của phần mềm.
10. Lựa chọn giấy phép mã nguồn mở nào sau đây phù hợp nhất nếu bạn muốn tối đa hóa sự tự do cho người dùng và cho phép họ sử dụng mã nguồn của bạn trong cả phần mềm mã nguồn mở và phần mềm độc quyền mà không cần chia sẻ lại mã nguồn sửa đổi?
A. GPL (GNU General Public License)
B. LGPL (GNU Lesser General Public License)
C. MIT License
D. Affero GPL
11. Mô hình phát triển 'crowdsourcing′ (huy động cộng đồng) thường được áp dụng như thế nào trong các dự án phần mềm mã nguồn mở?
A. Không áp dụng, vì phát triển mã nguồn mở chỉ dựa vào nhóm phát triển cốt lõi.
B. Để huy động vốn đầu tư cho dự án từ cộng đồng.
C. Để thu hút sự đóng góp mã nguồn, báo cáo lỗi, và ý tưởng từ cộng đồng rộng lớn.
D. Để quảng bá phần mềm và tăng số lượng người dùng.
12. Trong ngữ cảnh phần mềm mã nguồn mở, thuật ngữ 'forking′ (phân nhánh) đề cập đến hành động nào?
A. Hợp nhất các dự án mã nguồn mở khác nhau thành một dự án lớn hơn.
B. Tạo ra một bản sao độc lập của dự án mã nguồn mở và tiếp tục phát triển nó theo một hướng khác.
C. Xóa bỏ một phần mã nguồn của dự án mã nguồn mở.
D. Chuyển đổi dự án mã nguồn mở thành phần mềm độc quyền.
13. Ví dụ nào sau đây KHÔNG phải là phần mềm mã nguồn mở phổ biến?
A. Linux (hệ điều hành)
B. Apache HTTP Server (web server)
C. Microsoft Office (bộ ứng dụng văn phòng)
D. Mozilla Firefox (trình duyệt web)
14. Điều gì có thể xảy ra nếu một dự án phần mềm mã nguồn mở trở nên quá phổ biến và phụ thuộc vào sự đóng góp của một số ít nhà phát triển cốt lõi?
A. Dự án sẽ phát triển nhanh chóng hơn do tập trung nguồn lực.
B. Dự án có thể gặp rủi ro về tính bền vững nếu các nhà phát triển cốt lõi rời đi hoặc mất hứng thú.
C. Dự án sẽ tự động chuyển sang mô hình phát triển thương mại để đảm bảo nguồn lực.
D. Không có rủi ro nào, vì cộng đồng luôn sẵn sàng thay thế các nhà phát triển cốt lõi.
15. Mô hình phát triển 'chợ' (bazaar) trong phần mềm mã nguồn mở thường được so sánh với mô hình phát triển nào trong phần mềm độc quyền?
A. Mô hình thác nước (Waterfall)
B. Mô hình xoắn ốc (Spiral)
C. Mô hình nhà thờ (Cathedral)
D. Mô hình Agile
16. Trong lĩnh vực phần mềm mã nguồn mở, thuật ngữ 'vendor lock-in′ (khóa chặt vào nhà cung cấp) thường được nhắc đến như một vấn đề của loại phần mềm nào?
A. Phần mềm mã nguồn mở, do phụ thuộc vào cộng đồng hỗ trợ.
B. Phần mềm độc quyền, do phụ thuộc vào một nhà cung cấp duy nhất.
C. Cả phần mềm mã nguồn mở và phần mềm độc quyền đều có nguy cơ 'vendor lock-in′ như nhau.
D. Không loại phần mềm nào thực sự gặp vấn đề 'vendor lock-in′.
17. Khái niệm 'open standards′ (tiêu chuẩn mở) có mối liên hệ như thế nào với phần mềm mã nguồn mở?
A. Không liên quan, vì 'open standards′ chỉ áp dụng cho phần cứng.
B. Phần mềm mã nguồn mở thường tuân thủ 'open standards′ để tăng tính tương thích và khả năng liên hoạt.
C. 'Open standards′ chỉ được sử dụng trong phần mềm độc quyền để đảm bảo tính độc quyền.
D. Phần mềm mã nguồn mở thường tự tạo ra các tiêu chuẩn riêng, không tuân thủ 'open standards′.
18. Trong ngữ cảnh an ninh mạng, mã nguồn mở có thể mang lại lợi thế gì?
A. Mã nguồn mở công khai làm tăng nguy cơ bị tấn công vì hacker dễ dàng tìm ra lỗ hổng.
B. Tính minh bạch của mã nguồn cho phép cộng đồng kiểm tra và phát hiện lỗ hổng bảo mật nhanh chóng hơn.
C. Phần mềm mã nguồn mở thường ít được cập nhật bảo mật hơn so với phần mềm độc quyền.
D. Các lỗ hổng bảo mật trong phần mềm mã nguồn mở thường được giữ bí mật để tránh bị khai thác.
19. Giấy phép mã nguồn mở Apache License 2.0 cho phép người dùng làm gì?
A. Chỉ sử dụng phần mềm cho mục đích phi thương mại.
B. Sử dụng, sửa đổi, phân phối và cấp phép lại phần mềm, bao gồm cả trong các dự án độc quyền.
C. Chỉ được phép sửa đổi mã nguồn và sử dụng nội bộ, không được phân phối lại.
D. Phải trả phí bản quyền cho mỗi lần sử dụng phần mềm.
20. Trong phát triển phần mềm mã nguồn mở, thuật ngữ 'upstream′ và 'downstream′ thường được dùng để chỉ mối quan hệ nào?
A. Quan hệ giữa nhà phát triển và người dùng cuối.
B. Quan hệ giữa dự án gốc (upstream) và các dự án phái sinh (downstream).
C. Quan hệ giữa phần mềm và phần cứng.
D. Quan hệ giữa các phiên bản phần mềm khác nhau (phiên bản cũ và mới).
21. Trong quá trình phát triển phần mềm mã nguồn mở, 'code review′ (duyệt mã) đóng vai trò quan trọng như thế nào?
A. Không quan trọng, vì bất kỳ ai cũng có thể đóng góp mã mà không cần kiểm duyệt.
B. Giúp đảm bảo chất lượng mã, phát hiện lỗi và lỗ hổng bảo mật trước khi tích hợp vào dự án chính.
C. Chỉ cần thiết cho các dự án lớn, còn dự án nhỏ thì không cần.
D. Chỉ được thực hiện bởi người quản lý dự án, không cần sự tham gia của cộng đồng.
22. So sánh giấy phép GPL và giấy phép MIT, điểm khác biệt chính về triết lý là gì?
A. GPL tập trung vào quyền tự do sử dụng, còn MIT tập trung vào quyền sửa đổi.
B. GPL nhấn mạnh 'copyleft′ để duy trì tính mở, còn MIT cho phép sử dụng tự do hơn, kể cả trong phần mềm độc quyền.
C. GPL chỉ dành cho phần mềm phi thương mại, còn MIT dành cho cả thương mại và phi thương mại.
D. GPL có phạm vi ứng dụng rộng hơn MIT, bao gồm cả phần cứng và phần mềm.
23. Loại hình kinh doanh nào sau đây KHÔNG phổ biến trong hệ sinh thái phần mềm mã nguồn mở?
A. Bán dịch vụ hỗ trợ và tư vấn cho phần mềm mã nguồn mở.
B. Bán giấy phép sử dụng phần mềm mã nguồn mở.
C. Cung cấp các phiên bản thương mại hóa của phần mềm mã nguồn mở với các tính năng bổ sung.
D. Xây dựng nền tảng dựa trên phần mềm mã nguồn mở và thu phí dịch vụ nền tảng.
24. Ưu điểm chính của việc sử dụng hệ điều hành mã nguồn mở như Linux so với hệ điều hành độc quyền như Windows trong môi trường máy chủ là gì?
A. Giao diện người dùng đồ họa (GUI) thân thiện hơn cho người dùng cuối.
B. Khả năng tương thích phần cứng rộng rãi hơn, bao gồm cả các phần cứng cũ.
C. Tính ổn định, bảo mật và khả năng tùy biến cao, cùng với chi phí thấp hơn.
D. Được hỗ trợ bởi một tập đoàn lớn, đảm bảo cập nhật và vá lỗi nhanh chóng hơn.
25. Một doanh nghiệp quyết định chuyển từ phần mềm độc quyền sang phần mềm mã nguồn mở. Đâu là một trong những thách thức tiềm ẩn mà họ có thể gặp phải trong quá trình chuyển đổi?
A. Chi phí bản quyền phần mềm mã nguồn mở thường cao hơn.
B. Khả năng tương thích với phần cứng hiện có thường thấp hơn.
C. Cần đào tạo lại nhân viên để làm quen với phần mềm mới và quy trình làm việc khác.
D. Phần mềm mã nguồn mở thường thiếu tính năng và chức năng so với phần mềm độc quyền.
26. Giấy phép mã nguồn mở nào sau đây nhấn mạnh quyền tự do sử dụng, sửa đổi và phân phối phần mềm, ngay cả trong các sản phẩm thương mại, với yêu cầu tối thiểu về chia sẻ lại mã nguồn đã sửa đổi?
A. GPL (GNU General Public License)
B. LGPL (GNU Lesser General Public License)
C. MIT License
D. Creative Commons
27. Trong ngữ cảnh cấp phép phần mềm, sự khác biệt chính giữa 'permissive license′ (giấy phép permissive) và 'copyleft license′ (giấy phép copyleft) là gì?
A. 'Permissive license′ yêu cầu chia sẻ lại mã nguồn sửa đổi, còn 'copyleft license′ thì không.
B. 'Copyleft license′ yêu cầu chia sẻ lại mã nguồn sửa đổi, còn 'permissive license′ thì không bắt buộc.
C. 'Permissive license′ chỉ cho phép sử dụng phi thương mại, còn 'copyleft license′ cho phép cả thương mại.
D. 'Copyleft license′ có thời hạn sử dụng, còn 'permissive license′ là vĩnh viễn.
28. Công cụ quản lý phiên bản (version control system) nào thường được sử dụng rộng rãi trong phát triển phần mềm mã nguồn mở?
A. Microsoft Visual SourceSafe
B. Git
C. Perforce
D. ClearCase
29. Điều gì 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 bảo mật cao do được cộng đồng kiểm tra và vá lỗi liên tục.
C. Khả năng tùy biến và linh hoạt cao, phù hợp với nhu cầu đa dạng.
D. Được hỗ trợ kỹ thuật chính thức và độc quyền từ một công ty duy nhất.
30. Rủi ro pháp lý nào có thể phát sinh khi sử dụng phần mềm mã nguồn mở?
A. Không có rủi ro pháp lý nào, vì phần mềm mã nguồn mở là miễn phí và tự do.
B. Rủi ro vi phạm bản quyền nếu không tuân thủ đúng các điều khoản của giấy phép mã nguồn mở.
C. Rủi ro bị kiện bởi tác giả gốc nếu sử dụng phần mềm cho mục đích thương mại.
D. Rủi ro bị phạt vì sử dụng phần mềm không có giấy phép.