Đối với tôi điều tuyệt vời nhất về truyền thống UNIX là UNIX về cơ bản được viết bởi một anh chàng - Ken Thompson khi còn ở Bell Labs. Có một tài khoản hấp dẫn về điều này có thể được tìm thấy ở đây: http://www.bell-labs.com/history/unix/
Một số trích dẫn chỉ là vô giá:
"Tôi đã phân bổ mỗi tuần một lần cho hệ điều hành, trình bao, trình soạn thảo và trình biên dịch để sao chép chính nó ...", Thompson giải thích.
Ống:
Một cải tiến khác của UNIX là sự phát triển của các đường ống, giúp các lập trình viên có khả năng kết hợp một số quy trình cho một đầu ra cụ thể.
Thật không dễ dàng gì. "Thật dễ dàng để nói 'mèo thành grep thành ...,' hoặc 'ai biến mèo thành grep'," McIlroy giải thích. "Nhưng có tất cả các tham số phụ mà các lệnh này có; chúng chỉ không có đối số đầu vào và đầu ra, nhưng chúng có tất cả các tùy chọn này."
Mặc dù bị cản trở, McIlroy đã không bỏ ý tưởng. "Và trong khoảng thời gian từ 1970 đến 1972, thỉnh thoảng tôi sẽ nói: 'Làm thế nào để tạo ra một thứ như thế này?', Và tôi đã đưa ra một đề xuất khác, một đề xuất khác, một đề xuất khác. với một cú pháp cho lớp vỏ đi cùng với đường ống và Ken nói, 'Tôi sẽ làm điều đó!' "
"Anh ấy đã mệt mỏi khi nghe những thứ này," McIlroy giải thích. "Anh ấy đã không làm chính xác những gì tôi đã đề xuất cho cuộc gọi hệ thống đường ống. Anh ấy đã phát minh ra một thứ tốt hơn một chút mà cuối cùng đã thay đổi một lần nữa với những gì chúng ta có ngày hôm nay. Anh ấy đã sử dụng cú pháp vụng về của tôi."
"Thompson thấy rằng các đối số tập tin sẽ không phù hợp với sơ đồ này và anh ấy đã tham gia và thay đổi tất cả các chương trình đó trong cùng một đêm. Tôi không biết làm thế nào ... và sáng hôm sau chúng tôi đã có một orgy của một -liners. "
" Anh ấy đặt các đường ống vào UNIX, anh ấy đặt ký hiệu này vào vỏ, tất cả chỉ trong một đêm ," McElroy ngạc nhiên nói.
Về mặt kỹ thuật gọn gàng như thành tựu đạt được, khi Thompson tạo ra các đường ống, ông cũng đưa một thứ khác vào UNIX - một triết lý.
Như McIlroy đã mô tả, "triết lý mà mọi người bắt đầu đưa ra là 'Viết chương trình làm một việc và làm tốt. Viết chương trình để làm việc cùng nhau. Viết chương trình xử lý luồng văn bản, vì đó là giao diện phổ quát.'"