Giữa năm 1960, AT&T Bell Laboratories và một số trung tâm khác tham gia vào một dự
án nhằm tạo ra một hệ điều hành mới được đặt tên là Multics (Multiplexed Information and
Computing Service). Đến năm 1969, chương trình Multics bị bãi bỏ vì đó là một dự án quá
nhiều tham vọng và do đó không khả thi. Thậm trí nhiều yêu cầu đối với Multics thời đó đến
nay vẫn chưa có được trên các Unix mới nhất.
Nhưng Ken Thompson, Dennis Ritchie, và một số đồng nghiệp của Bell Labs đã không
bỏ cuộc. Thay vì xây dựng một hệ điều hành làm nhiều việc một lúc như Multics, họ quyết định
phát triển một hệ điều hành đơn giản chỉ làm tốt m ột vi ệc là chạy chương trình (run program).
Hệ điều hành sẽ có rất nhiều các công cụ (tool) nhỏ, đơn gi ản, gọn nhẹ (compact) và chỉ làm tốt
một công việc. Bằng cách kết hợp nhiều công cụ lại với nhau, họ sẽ có một chương trình thực
hiện một công vi ệc phức tạp. Đó cũng là cách thức người lập trình viết ra chương trình. Peter
Neumann đặt tên Unix cho hệ điều hành "đơn giản" này. Vào năm 1973, sử dụng ngôn ngữ C
của Ritchie, Thompson đã viết l ại toàn bộ hệ điều hành Unix và đây là một thay đổi quan trọng
của Unix, vì nhờ đó Unix từ chỗ là hệ điều hành cho một máy PDP-xx trở thành hệ điều hành
của các máy khác với m ột cố gắng tối thi ểu để chuyển đổi. Khoảng 1977 bản quyền của UNIX
được giải phóng và hệ điều hành UNIX trở thành m ột thương phẩm.
21 trang |
Chia sẻ: lvbuiluyen | Lượt xem: 2474 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Quá trình hình thành và phát triển của gnu/linux, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CH K6 - 2011 Quá trình hình thành và phát triển của GNU/Linux
4/14/2012
Môn học: Phương pháp nghiên cứu khoa học trong tin học
Hướng dẫn: GS. TSKH. Hoàng Kiếm Thực hiện: Nguyễn Hữu Việt Long CH1101101
Quá trình hình thành và phát triển của GNU/Linux
1
Mục lục
I. Sự ra đời của Unix ...................................................................................................................... 2
II. Lịch sử hình thành của GNU ..................................................................................................... 3
1. Richard Stallman và cộng đồng chia sẻ phần mềm đầu tiên.................................................. 3
2. Sự sụp đổ của cộng đồng ......................................................................................................... 4
3. Dự án GNU .............................................................................................................................. 5
a. Những chương trình đầu tiên .............................................................................................. 5
b. Giấy phép GPL ................................................................................................................... 7
c. Quỹ tài trợ phần mềm tự do FSF ............................................................................................ 8
d. Những mục tiêu về công nghệ ............................................................................................. 9
e. Danh sách các công việc của GNU ...................................................................................... 10
f. GNU Library GPL ............................................................................................................... 10
III. Hệ điều hành GNU/Linux ...................................................................................................... 11
1. Hệ điều hành GNU ................................................................................................................. 11
2. Linux và GNU/Linux .............................................................................................................. 11
3. Biến đổi theo hướng chuyên nghiệp ...................................................................................... 14
a. Vòng quay liên tục ............................................................................................................ 14
b. Linux và những thách thức không nhỏ .............................................................................. 16
4. Một vài điều về GNU/Linux .................................................................................................. 16
a. Linux là gì? ...................................................................................................................... 16
b. Linux - cơn ác mộng của Microsoft ................................................................................... 17
IV. Kết luận.................................................................................................................................. 18
V. Tài liệu tham khảo .................................................................................................................... 20
Quá trình hình thành và phát triển của GNU/Linux
2
I. Sự ra đời của Unix
Giữa năm 1960, AT&T Bell Laboratories và một số trung tâm khác tham gia vào một dự
án nhằm tạo ra một hệ điều hành mới được đặt tên là Multics (Multiplexed Information and
Computing Service). Đến năm 1969, chương trình Multics bị bãi bỏ vì đó là một dự án quá
nhiều tham vọng và do đó không khả thi. Thậm trí nhiều yêu cầu đối với Multics thời đó đến
nay vẫn chưa có được trên các Unix mới nhất.
Nhưng Ken Thompson, Dennis Ritchie, và một số đồng nghiệp của Bell Labs đã không
bỏ cuộc. Thay vì xây dựng một hệ điều hành làm nhiều việc một lúc như Multics, họ quyết định
phát triển một hệ điều hành đơn giản chỉ làm tốt một việc là chạy chương trình (run program).
Hệ điều hành sẽ có rất nhiều các công cụ (tool) nhỏ, đơn giản, gọn nhẹ (compact) và chỉ làm tốt
một công việc. Bằng cách kết hợp nhiều công cụ lại với nhau, họ sẽ có một chương trình thực
hiện một công việc phức tạp. Đó cũng là cách thức người lập trình viết ra chương trình. Peter
Neumann đặt tên Unix cho hệ điều hành "đơn giản" này. Vào năm 1973, sử dụng ngôn ngữ C
của Ritchie, Thompson đã viết lại toàn bộ hệ điều hành Unix và đây là một thay đổi quan trọng
của Unix, vì nhờ đó Unix từ chỗ là hệ điều hành cho một máy PDP-xx trở thành hệ điều hành
của các máy khác với một cố gắng tối thiểu để chuyển đổi. Khoảng 1977 bản quyền của UNIX
được giải phóng và hệ điều hành UNIX trở thành một thương phẩm.
Kiến trúc của Unix
Quá trình hình thành và phát triển của GNU/Linux
3
Các lập trình viên của Bell Labs: Ken Thompson (trái) và Dennis Ritchie (phải)
* Nhận xét: Ở đây ta thấy Ken Thompson, Dennis Ritchie và đồng nghiệp đã áp dụng một số
nguyên tắc sáng tạo sau:
Nguyên tắc tách khỏi: tách phần duy nhất cần thiết ra khỏi đối tượng. Họ đã xác định những
cái cần thiết và phát triển một hệ điều hành đơn giản chỉ làm tốt một công việc là chạy
chương trình thay cho dự án ban đầu quá nhiều tham vọng và họ đã tạo ra được hệ điều
hành Unix đầu tiên.
Nguyên tắc phân nhỏ: Chia đối tượng thành các phần độc lập, làm cho đối tượng trở nên
tháo lắp được. Hệ điều hành của họ sẽ có rất nhiều công cụ nhỏ, đơn giản, gọn nhẹ và chỉ
làm tốt một công việc.
Nguyên tắc kết hợp: Bằng cách kết hợp những công cụ độc lập với nhau, họ có một chương
trình thực hiện một công việc phức tạp.
II. Lịch sử hình thành của GNU
1. Richard Stallman và cộng đồng chia sẻ phần mềm đầu tiên
Trong quyển sách biên khảo "Hacker: Những người hùng của cuộc cách mạng máy tính"
(1984), nhà báo kỳ cựu Steven Levy gọi Richard Stallman là "người cuối cùng của cộng đồng
hacker chân chính". Gặp lại Stallman đầu năm 2010, Levy nhận thấy Stallman ngày càng cô độc
hơn trong thế giới hiện đại xa lạ với lý tưởng sống của ông.
Những hacker mà Levy nhắc đến thuộc về cộng đồng những chuyên viên máy tính ở
thời kỳ hình thành mạng Internet và hệ điều hành Unix trong hai thập niên 1960 và 1970, những
Quá trình hình thành và phát triển của GNU/Linux
4
người đam mê phân giải hệ thống máy tính phức tạp và tạo ra những chức năng mới, biến điều
không thể thành có thể. Hacker rất ghét hành động "giấu nghề", xem sự chia sẻ mã nguồn phần
mềm để học hỏi lẫn nhau là nguyên tắc đạo đức cơ bản của cộng đồng. Hacker rất ghét sự phân
biệt đối sử dựa vào bằng cấp hoặc chức vụ, chống lại việc ban quyền ưu tiên sử dụng hệ thống
máy tính cho một số người "bề trên", xem sự bình đẳng trong việc sử dụng hệ thống máy tính là
một phần của nhân quyền. Điều này có thể khó hiểu đối với thế hệ lớn lên sau thời kỳ bùng nổ
máy tính cá nhân.
Trong thập niên 1980, giới truyền thông tùy tiện dùng từ hacker để chỉ những kẻ "bẻ
khóa" (cracker), xâm nhập bất hợp pháp các hệ thống máy tính để đánh cắp thông tin hoặc chỉ
đơn thuần thỏa mãn sở thích bệnh hoạn. Hacker chân chính luôn dùng tên thật, kể cả khi vô
hiệu hóa những biện pháp an ninh để chứng minh nhược điểm của hệ thống hoặc để khẳng định
quyền tự do của mình. Hacker luôn khinh miệt cracker. Thế nhưng ngày nay nghĩa gốc của từ
hacker đã trở thành nghĩa hiếm.
Khi Stallman bắt đầu làm việc tại phòng thí nghiệm Trí tuệ nhân tạo (AI Lab) của học
viện MIT năm 1971, ông bắt đầu trở thành một thành viên của cộng đồng chia sẻ phần mềm đã
tồn tại mấy năm trước đó. Sự chia sẻ phần mềm không chỉ giới hạn trong cộng đồng đặc biệt
của họ, bất cứ khi nào có người ở một trường đại học hoặc ở một công ty khác muốn chuyển
hoặc sử dụng một chương trình, họ đều vui vẻ cho phép. Nếu bạn thấy ai đó sử dụng một
chương trình là lạ hay thú vị, bạn đều có thể hỏi xem mã nguồn của nó, vì thế bạn có thể đọc
nó, thay đổi nó, hoặc mổ xẻ một phần của nó để làm nên một chương trình mới.
* Nhận xét: Những lập trình viên đầu tiên cùng cộng đồng đã áp dụng các nguyên tắc
chia sẻ, nguyên tắc sao chép để chia sẻ những phần mềm do họ làm ra để cùng nhau họ hỏi,
trao đổi kinh nghiệm để cùng nhau phát triển.
2. Sự sụp đổ của cộng đồng
Tình hình thay đổi một cách mạnh mẽ vào những năm đầu thập kỉ 80, khi ngành công
nghiệp máy tính hình thành và phát triển mạnh mẽ. Các công ty công nghệ ra đời hàng loạt,
cùng với đó là những luật lệ về sở bản quyền hữu trí tuệ ra đời.
Những chiếc máy tính của thời đại mới, như là VAX hoặc 68020, đều có hệ điều hành
cho chính nó, nhưng không cái nào là phần mềm tự do cả: bạn buộc phải kí một hợp đồng để có
một bản copy sử dụng được. Chủ của những phần mềm có đăng kí độc quyền đã tạo ra luật lệ
là: "Nếu bạn chia sẻ nó cho hàng xóm, bạn là người vi phạm bản quyền. Nếu bạn muốn bất kì
một thay đổi nào, hãy nói với chúng tôi."
Cộng đồng hacker của phòng thí nghiệm Trí tuệ nhân tạo cũng sụp đổ, trước đó không
lâu. Vào năm 1981, the spin_off company Symbolics đã thuê gần hết các hacker của phòng thí
nghiệm, và cộng đồng thưa thớt dần đã không thể tồn tại lâu hơn. Trong hoàn cảnh đó, Stallman
đặt ra 3 lựa chọn cho mình:
- Lựa chọn dễ dàng là tham gia vào thế giới phần mềm độc quyền, kí những hợp đồng
mà ông cho là không rõ ràng và hứa sẽ không giúp đỡ chiến hữu của ông. Rất có khả năng là
ông sẽ phát triển những phần mềm bán theo những hợp đồng và kiếm được nhiều tiền.
- Một sự lựa chọn khác là rời bỏ lĩnh vực máy tính. Theo cách đó tài năng của ông sẽ
Quá trình hình thành và phát triển của GNU/Linux
5
không bị lạm dụng nhưng sẽ bị lãng phí.
- Lựa chọn thứ 3 là ông có thể viết một hay một vài chương trình nào đó để làm cho
cộng đồng chia sẻ phần mềm sống lại một lần nữa. Và đây chính là lựa chọn của Stallman, lựa
chọn theo lương tâm của ông.
* Nhận xét: Stallman đã áp dụng nguyên tắc linh động: thay đổi các đặc trưng của môi
trường bên ngoài sao cho tối ưu trong từng giai đoạn làm việc. Ông đã thay đổi môi trường làm
việc của mình, bỏ việc tại MIT và sáng lập ra dự án GNU để thực hiện mong ước của mình là
làm cho cộng đồng chia sẻ phần mềm sống lại một lần nữa.
3. Dự án GNU
Vào tháng 1 năm 1984, Stallman quyết định bỏ việc tại MIT và sáng lập ra dự án GNU
vào năm 1984, với mục đích phát triển một hệ điều hành máy tính miễn phí GNU, cái tên GNU
được chọn theo một truyền thống của hacker, là viết tắt đệ qui của "GNU's Not Unix" (GNU
không là Unix).
Bằng cách này ông đã tặng cho người dùng máy tính sự tự do mà họ chưa hề có được trước
đây.
a. Những chương trình đầu tiên
Stallman bắt đầu làm GNU Emacs vào tháng 9 năm 1984, và vào đầu năm 1985 thì nó bắt
đầu sử dụng được. Điều này cho phép ông có thể sử dụng hệ điều hành Unix để soạn thảo,
không hứng thú với việc dùng Vi hay Ed, ông đã tự soạn thảo trên các loại máy khác nhau cho
đến khi đó.
Kiến trúc của Emacs
Không lâu trước khi bắt đầu dự án GNU, Stallman có nghe về bộ dịch tự do cho các
trường đại học (Free University Compiler Kit), còn gọi là VUCK (từ "tự do" trong tiếng Hà Lan
Quá trình hình thành và phát triển của GNU/Linux
6
bắt đầu bằng chữ cái V). Đây là một trình biên dịch thiết kế để có thể xử lí được nhiều ngôn
ngữ, gồm cả C và Pascal, và để cung cấp cho các máy đa mục đích. Stallman đã đề nghị tác giả
cho GNU sử dụng nó nhưng ông ta đã đáp lại một cách chế giễu, tuyên bố rằng trường đại học
thì được tự do nhưng GNU thì không. Vì vậy Stallman quyết định rằng chương trình đầu tiên
của mình cho dự án GNU sẽ là một trình biên dịch đa tầng và đa ngôn ngữ.
Hi vọng tránh việc tự mình viết toàn bộ chương trình dịch, Stallman đã sử dụng mã
nguồn cho trình dịch Pastel, một trình dịch đa tầng phát triển tại phòng nghiên cứu Lawrence
Livermore. Nó cung cấp, và được viết bằng, một phiên bản mở rộng của Pascal, thiết kế để trở
thành ngôn ngữ lập trình hệ thống. Stallman định thêm vào đó phần giao diện ngôn ngữ C, và
bắt đầu lập trình nó cho máy tính Motorola 68000. Nhưng ông đã phải từ bỏ nó khi tôi nhận ra
rằng trình biên dịchđó cần rất nhiều MB trong không gian ngăn xếp, và hệ điều hành Unix
68000 thì chỉ chấp nhận được 64K.
Sau đó Stallman thấy trình dịch Pastel hoạt động bằng cách phân tích toàn bộ đầu vào
thành những cây cú pháp, chuyển toàn bộ cây cú pháp này vào mắt xích chỉ dẫn, và sau đó tổng
hợp toàn bộ đầu ra, không giải phóng bộ nhớ. Từ đó, ông quyết định sẽ viết một trình biên dịch
mới từ đống hỗn tạp đó. Trình biên dịch đó bây giờ được biết đến với tên gọi GCC, không sử
dụng tẹo nào từ trình dịch Pastel trong nó cả, nhưng ông đã cố gắng để tương thích và sử dụng
giao diện C mà ông đã viết.
Kiến trúc của GCC
* Nhận xét: Trong quá trình viết những chương trình đầu tiên, Stallman đã sử dụng các
nguyên tắc sáng tạo sau:
Nguyên tắc thực hiện sơ bộ: Thực hiện trước sự thay đổi, tác động cần có, hoàn toàn
hoặc từng phần đối với đối tượng. Stallman đã chọn viết Emacs và trình biên dịch GCC
đầu tiên vì đây là những công cụ lập trình thiết yếu, làm tiền đề xây dựng nên các phần
mềm của GNU sau này.
Nguyên tắc sử dụng trung gian: Tạm thời gắn đối tượng cho trước với đối tượng khác,
Quá trình hình thành và phát triển của GNU/Linux
7
dễ tách rời sau đó. Để tránh việc tự mình viết toàn bộ chương trình dịch, Stallman đã sử
dụng mã nguồn cho trình biện dịch Pastel, thêm phần giao diện bằng ngôn ngữ C. Sau
đó nhận thấy Pastel không thích hợp, ông đã tự viết lại một trình biên dịch khác và tận
dụng lại phần giao diện đã viết trước đó.
Nguyên tắc tự phục vụ: đối tượng phải tự phục vụ bằng cách thực hiện các thao tác
(hoạt động) phụ trợ, sửa chữa. Khi bị từ chối cho sử dụng VUCK, Stallman đã tìm đến
Pastel chưa hoàn chỉnh lắm và viết thêm vài bổ sung để sử dụng. Sau khi thấy Pastel
không thích hợp, ông đã tự mình viết lại trình biên dịch thỏa mãn yêu cầu của mình, đó
là GCC.
b. Giấy phép GPL
Mục tiêu cuối cùng của GNU là mang lại quyền tự do cho người dùng, chứ không phải
để nổi tiếng, vì thế cần sử dụng một điều khoản phân phối có thể ngăn chặn phần mềm GNU bị
biến thành phần mềm độc quyền, và giấy phép GPL (GNU Public Lisence) ra đời.
Vào năm 1984 hay 1985, Don Hopkins (một anh chàng giàu sức tưởng tượng) đã gửi
cho Stallman một bức thư. Trên phong bì, anh ta đã viết một vài câu rất thú vi, bao gồm câu
này: "Copyleft -- all rights reversed". Stallman đã sử dụng từ copyleft để đặt tên cho phạm trù
phân phối mà ông phát triển vào thời gian đó.
Copyleft dùng luật bản quyền (Copyright), nhưng đảo lại để phục vụ cho mục đích đối
lập với mục đích thông thường của nó: Thay vì nghĩa cá nhân hóa phần mềm, nó mang nghĩa là
giữ cho phần mềm được tự do. Ý tưởng trung tâm của luật copyleft là chúng ta cho mọi người
quyền chạy, copy, sửa
chữa chương trình và phân phối những phiên bản đã sửa đổi - nhưng không cho phép thêm hạn
chế. Vì thế, những quyền tự do chủ yếu của phần mềm tự do sẽ được đảm bảo cho tất cả những
ai có bản copy, chúng trở thành những quyền lợi không thể chuyển nhượng.
Định nghĩa phần mềm tự do theo quan điểm của Stallman:
Bạn có quyền chạy chương trình với bất kì mục đích nào.
Bạn có quyền sửa chữa chương trình cho phù hợp với nhu cầu của bạn. (Để làm cho
chương trình này hữu ích hơn trong thực tế, bạn phải truy cập mã nguồn, vì việc thay
đổi một chương trình mà không có mã nguồn là cực kì khó khăn).
Bạn có quyền tự do phân phối lại các bản copy, dù miễn phí hay phải trả tiền.
Bạn có quyền phân phối những bản đã sửa chữa của chương trình, để cộng đồng
có thể được lợi từ những nâng cấp của bạn.
* Nhận xét: Ở đây ta thấy Stallman soạn thảo giấy phép GPL dựa theo nguyên tắc đảo
ngược: Lật ngược đối tượng, lộn trái đối tượng. Các luật trong GPL dựa trên các luật bản quyền
truyền thống nhưng tất cả đều bị đảo ngược.
copyright --all rights reserved > < copyleft --all rights reversed.
Quá trình hình thành và phát triển của GNU/Linux
8
c. Quỹ tài trợ phần mềm tự do FSF
Khi nhu cầu dùng Emacs tăng lên, mọi người cũng trở nên quan tâm đến các dự án khác
của GNU, và Stallman quyết định đã đến lúc phải tìm kiếm tài trợ. Vì vậy vào năm 1985 họ xây
dựng nên quỹ tài trợ phần mềm tự do (FSF - Free Software Foundation), một tổ chức được miễn
thuế hỗ trợ phát triển phần mềm tự do. Quỹ FSF tiếp quản luôn việc kinh doanh phân phối băng
từ Emacs, sau đó mở rộng bằng cách thêm các phần mềm tự do khác (cả của GNU và không
phải GNU) vào băng từ, và cả bán những quyển sách hướng dẫn sử dụng tự do.
Quỹ FSF chấp nhận quà tặng, nhưng hầu hết thu nhập của nó là từ việc bán các bản copy
của các phần mềm tự do, và các dịch vụ liên quan. Ngày nay nó bán cả các đĩa CD mã nguồn,
các đĩa CD ở dạng nhị phân, các sách in hướng dẫn xinh xinh (tất cả đều có quyền tự do phân
phối hoặc sửa lại), và các phân phối hạng sang (nơi họ xây dựng một tập hợp các phần mềm để
bạn lựa chọn công nghệ cơ sở cho máy tính).
Nhân viên của FSF đã viết và bảo trì một số lượng lớn các chương trình phần mềm
GNU. Hai phần mềm trứ danh là thư viện C và trình tiện ích. Thư viện C của GNU là một cái
thư viện mà bất cứ chương trình nào chạy trên hệ điều hành GNU/Linux cũng dùng để truyền
thông với Linux. Nó được phát triển bởi một cán bộ của FSF, Ronald McGrath. Trình tiện ích
dùng trên hầu hết các hệ điều hành GNU/Linux là Bash (Bourne Again Shell), thiết kế bởi một
nhân viên FSF Brian Fox.
Stallman và các nhân viên FSF
Bán các bản copy Emacs chính là một loại hình kinh doanh phần mềm tự do. Khi FSF
tiếp quản công việc này, Stallman cần một cách khác để kiếm sống. Ông đã tìm thấy nó trong
việc bán các dịch vụ liên quan đến những phần mềm mình phát triển. Việc này bao gồm cả dạy
Quá trình hình thành và phát triển của GNU/Linux
9
những chủ đề như là sử dụng GNU Emacs như thế nào hay tùy chỉnh GCC ra sao, phát triển
phần mềm, nhất là tương thích GCC với những tầng mới.
Ngày nay mỗi loại kinh doanh phần mềm tự do đều được rất nhiều tập đoàn thực hiện.
Một số phân phối tập hợp các phần mềm tự do trên các đĩa CD, số khác bán phần hỗ trợ theo
yêu cầu của khách hàng, sửa lỗi, hay thêm các chức năng mới quan trọng. Thậm chí họ bắt đầu
thấy một số công ty chuyên giới thiệu sản phẩm mới.
Mạng lưới hoạt động của FSF
* Nhận xét: Các nguyên tắc sáng tạo áp dụng ở đây là:
Nguyên tắc quan hệ phản hồi: Thiết lập quan hệ phản hồi. Khi người dùng có nhu cầu
sử dụng các phần mềm của GNU mà không có điều kiện truy cập internet hoặc muốn
muốn tập hợp đầy đủ các chương trình đi kem hướng dẫn và đóng gói sẵn thì FSF sẽ
cung cấp và lấy tiền công vận chuyển và đóng gói phần mềm. Từ đó tạo ra một mô hình
kinh doanh phần mềm tự do.
Nguyên tắc “rẻ” thay cho “đắt”: Thay đối tượng đắt tiền bằng bộ các sản phẩm rẻ kém
hơn. Đối tượng ở đây là các phần mềm tự do, kém hơn ở đây không có nghĩa là về chất
lượng mà là thua thiệt các phần mềm thương mại ở chỗ ra đời sau và thường có giao
diện không hào nhoáng (tuy nhiên có thể chấp nhận được). Rẻ là do các phần mềm này
không tính phí bản quyền mà chỉ tính phí dịch vụ. Bằng cách đó, các phần mềm tự do đã
đến được vơi nhiều người sử dụng.
d. Những mục tiêu về công nghệ
Mục tiêu cơ bản của GNU là trở thành phần mềm tự do. Cho dù GNU không ưu việt về
công nghệ hơn Unix, nó vẫn có lợi ích về mặt xã hội, cho phép người dùng hợp tác, và lợi ích
về mặt đạo đức, tôn trọng quyền tự do của người dùng. Nhưng việc áp dụng những tiêu chuẩn
phổ biến của thực tiễn vào sản phẩm là rất tự nhiên, ví dụ như, phân loại cấu trúc dữ liệu để
tránh các hạn chế kích cỡ định sẵn phát sinh bất ngờ, và xử lí tất cả các mã 8 bit có thể ở bất cứ
Quá trình hình thành và phát triển của GNU/Linux
10
chỗ nào dễ hiểu.
Thêm vào đó, họ cũng chống lại mục tiêu thu nhỏ kích cỡ bộ nhớ của Unix, bằng quyết
định ngừng cung cấp các máy tính 16 bit (hiển nhiên là các máy tính 32 bit sẽ là tiêu chuẩn khi
hệ điều