Lịch sử của Unix: Từ Bell Labs đến iPhone

Tác Giả: Judy Howell
Ngày Sáng TạO: 1 Tháng BảY 2021
CậP NhậT Ngày Tháng: 23 Tháng Sáu 2024
Anonim
AT&T Archives: The UNIX Operating System
Băng Hình: AT&T Archives: The UNIX Operating System

NộI Dung



Lấy đi:

Việc Unix vẫn được sử dụng sau hơn 40 năm là dấu hiệu của tính linh hoạt của nó.

Bạn có thể nghĩ rằng điện thoại thông minh hoặc máy tính bảng của bạn là hoàn toàn mới, nhưng công nghệ bên dưới nó có lịch sử lâu đời từ những năm 1960. Nếu bạn có thiết bị iOS hoặc Android, thiết bị này dựa trên hệ điều hành có tên Unix được phát triển tại Bell Labs. Ngay cả khi bạn có PC chạy Windows, nó vẫn nói chuyện với nhiều máy chủ trong ngày, nhiều trong số đó cũng đang chạy trên Unix. Đối với lịch sử lâu dài của nó, có một chút ngạc nhiên khi Unix vẫn còn quá phổ biến. Ở đây cũng hãy xem làm thế nào nó đến nay.

Lịch sử ban đầu

Nguồn gốc của những gì cuối cùng đã trở thành Unix bắt đầu vào giữa những năm 1960 với một dự án có tên là MULTICS. Một tập đoàn gồm các tổ chức, bao gồm MIT, GE và Bell Labs, đã cùng nhau tạo ra một hệ thống để hỗ trợ một "tiện ích điện toán". Ngày nay, chúng ta có thể gọi nó là điện toán đám mây. Thật không may, MULTICS có thể đã đi quá xa so với thời điểm trước đó và Bell Labs cuối cùng đã rút khỏi dự án vào năm 1969, khiến một vài lập trình viên, Dennis Ritchie và Ken Thompson, bị mắc kẹt trên các thiết bị cũ.


Một khi Thompson và Ritchie đã có sở thích về điện toán tương tác khi thế giới vẫn chủ yếu phụ thuộc vào xử lý hàng loạt, họ không thể quay lại. Vì vậy, họ quyết định bắt đầu dự án của riêng mình, họ đã cố gắng lưu một số tính năng tốt nhất của MULTICS.

"Điều chúng tôi muốn bảo tồn không chỉ là một môi trường tốt để lập trình, mà là một hệ thống mà một mối quan hệ có thể hình thành," Ritchie viết vào năm 1979. "Chúng tôi biết từ kinh nghiệm rằng bản chất của điện toán xã, được cung cấp bởi điều khiển từ xa -access, máy chia sẻ thời gian, không chỉ là nhập các chương trình vào một thiết bị đầu cuối thay vì một phím bấm, mà là để khuyến khích giao tiếp chặt chẽ. "

Ngoài những mục tiêu cao cả đó, Thompson còn có một động cơ cá nhân hơn: Anh muốn chơi một trò chơi được phát minh có tên là "Du hành không gian".


Thompson và Ritchie quyết định triển khai hệ thống của họ trên Tập đoàn Thiết bị Kỹ thuật số PDP-7. Họ phác thảo một hệ thống cơ bản và viết nó bằng ngôn ngữ lắp ráp. Họ quyết định đặt tên cho nó là "UNICS" như một cách chơi chữ trên ĐA NĂNG. Họ sớm đổi tên thành "Unix."

Họ muốn có một máy tính mạnh hơn, vì vậy họ đã nói chuyện với ban quản lý về việc mua PDP-11 để phát triển ứng dụng xử lý cho bộ phận sáng chế của Bell Labs. Kết quả là, ứng dụng người dùng cuối đầu tiên cho Unix về cơ bản là xử lý văn bản.

Thành công đã dẫn đến sự phát triển của Unix trong Bell Labs. Một tính năng đặc biệt là khả năng chuyển hướng đầu vào từ chương trình này sang chương trình khác, cho phép tiếp cận "khối xây dựng" để phát triển phần mềm.

Không lỗi, không căng thẳng - Hướng dẫn từng bước của bạn để tạo ra phần mềm thay đổi cuộc sống mà không phá hủy cuộc sống của bạn


Bạn không thể cải thiện kỹ năng lập trình của mình khi không ai quan tâm đến chất lượng phần mềm.

Bước ngoặt của Unix là khi nó được triển khai lại bằng C, một ngôn ngữ được thiết kế bởi Thompson và Ritchie. C là một ngôn ngữ cấp cao. Viết một hệ điều hành theo cách này sẽ có ảnh hưởng sâu sắc đến sự phát triển của nó; nó tạo ra Unix di động, có nghĩa là nó có thể chạy trên các máy tính khác nhau với nỗ lực tương đối ít. (Tìm hiểu về lịch sử đằng sau các ngôn ngữ lập trình trong Lập trình máy tính: Từ Ngôn ngữ máy đến Trí tuệ nhân tạo.)

Unix đã tạo ra rất nhiều sự chú ý khi Thompson và Ritchie xuất bản một bài báo về hệ thống này trên tạp chí khoa học máy tính uy tín Communications of the ACM năm 1974.

Phân phối phần mềm Berkeley

Phổ biến như Unix đã vào bên trong và bên ngoài Bell Labs, AT & T, trong đó Bell Labs là bộ phận nghiên cứu, không thể tận dụng nó vì một nghị định đồng ý. Để đổi lấy việc duy trì độc quyền về dịch vụ điện thoại ở Hoa Kỳ, nó không thể xâm nhập vào bất kỳ lĩnh vực kinh doanh phi điện thoại nào, cụ thể là phần mềm máy tính, nhưng được yêu cầu cấp giấy phép cho bất kỳ ai hỏi.

Bell Labs thực tế đã tặng các bản sao Unix, hoàn chỉnh với mã nguồn, cho các trường đại học. Một trong số đó là UC Berkeley. Việc bao gồm mã nguồn cho phép sinh viên, đặc biệt là Bill Joy, thực hiện các thay đổi và cải tiến. Những cải tiến này được gọi là Phân phối Phần mềm Berkeley (BSD).

Một số sáng kiến ​​đã ra đời từ dự án BSD, bao gồm cả phiên bản đầu tiên của Unix để tận dụng bộ nhớ ảo của dòng máy tính mini VAX của DECs và trình soạn thảo vi.

Sự bổ sung quan trọng nhất là việc triển khai TCP / IP, đặc biệt là Unix và BSD Unix, hệ điều hành được lựa chọn trên Internet non trẻ. (Tìm hiểu thêm về sự phát triển của TCP / IP trong Lịch sử Internet.)

Các phiên bản dựa trên BSD cũng trở nên phổ biến trên thị trường máy trạm mới nổi, đặc biệt là trên các máy tính của Sun microsystems, mà Bill Joy rời Berkeley để đồng sáng lập.

GNU và Linux

Sun không phải là công ty duy nhất thương mại hóa Linux. Sau khi chia tay AT & T vào đầu những năm 80, cuối cùng nó cũng có thể tham gia vào ngành kinh doanh máy tính. AT & T đã giới thiệu System V, hướng đến việc cài đặt nhiều người dùng hơn.

Nhưng ít nhất một người không hài lòng với cách ngành công nghiệp chuyển từ môi trường học thuật nơi mọi người chia sẻ mã nguồn sang thế giới thương mại nơi mọi người "tích trữ" mã.

Richard Stallman, một lập trình viên cho Phòng thí nghiệm trí tuệ nhân tạo MITs, đã công bố Dự án GNU (GNU Not Unix) vào năm 1983.

"Tôi cho rằng Quy tắc Vàng yêu cầu rằng nếu tôi thích một chương trình, tôi phải chia sẻ nó với những người khác thích nó", Stallman viết trong Tuyên ngôn GNU của mình. "Người bán phần mềm muốn chia rẽ người dùng và chinh phục họ, khiến mỗi người dùng đồng ý không chia sẻ với người khác. Tôi từ chối phá vỡ sự đoàn kết với những người dùng khác theo cách này. Tôi không thể có ý định ký kết thỏa thuận không tiết lộ hoặc thỏa thuận cấp phép phần mềm."

Dự án GNU nhằm mục đích thay thế phần mềm Unix độc quyền bằng phần mềm miễn phí, "miễn phí như trong lời nói, không phải trong bia", như Stallman nói. Nói cách khác, với mã nguồn và giấy phép thực sự khuyến khích mọi người cho đi.

Thật điên rồ khi chương trình này phải nghe, Stallman đã thu hút được một nhóm lập trình viên làm việc trong dự án, phát triển phần mềm chất lượng cao như biên tập viên, trình biên dịch và các công cụ khác, tất cả được phát hành theo giấy phép (đặc biệt là Giấy phép công cộng chung (GPL) ) đảm bảo quyền truy cập vào mã nguồn. Ảnh hưởng của GNU thậm chí còn thuyết phục các lập trình viên BSD xóa mã AT & T khỏi hệ thống, khiến nó cũng có thể phân phối lại hoàn toàn.

Phần còn thiếu cuối cùng là kernel, hoặc lõi của hệ thống. Hạt nhân GNU, HURD, hóa ra khó thực hiện hơn dự đoán. May mắn thay, một dự án sở thích của sinh viên tốt nghiệp Phần Lan hóa ra là GNU tiết kiệm ân sủng. Linus Torvald đã phát hành nhân Linux của mình vào năm 1991, và mặc dù ông không có ý định đó xảy ra, đã bắt đầu một cuộc cách mạng trong các hệ điều hành. Chẳng mấy chốc, "bản phân phối" của các công cụ Linux và GNU bắt đầu xuất hiện, cho phép bất cứ ai có kỹ năng cần thiết đều có một hệ điều hành giống Unix tương tự như các công cụ có giá hàng ngàn đô la được sử dụng trong các trường đại học và phòng thí nghiệm nghiên cứu. Trên hết, họ có thể làm điều đó trên một PC thông thường, miễn phí. (Đọc thêm về các bản phân phối phổ biến ngày nay trong Linux Distros: Cái nào tốt nhất?)

Điều này không thể cưỡng lại với số lượng ngày càng tăng của các công ty khởi nghiệp và ISP trong thập niên 90. Họ có thể có được phần mềm máy chủ miễn phí và thuê những sinh viên tốt nghiệp ngành khoa học máy tính trẻ tuổi, những người biết cách điều hành chúng mà không phải kiếm được nhiều tiền. Ngăn xếp máy chủ Linux / Apache / MySQL / PHP vẫn là một trong những nền tảng được lựa chọn cho các nhà cung cấp dịch vụ Web hiện nay.

Di động

Mặc dù Unix đã hơn 40 năm tuổi, tính linh hoạt của nó cho phép sử dụng vượt xa các máy tính mini ban đầu mà nó chạy lần đầu tiên. Một trong những thứ dễ thấy nhất là Táo iOS, một phần dựa trên FreeBSD, bản thân nó dựa trên mã BSD gốc. Hệ điều hành di động lớn khác, Android, dựa trên nhân Linux đã được sửa đổi. Mặc dù cả hai đều không chứa mã Unix gốc, nhưng chúng bảo tồn nhiều ý tưởng cơ bản, ngay cả trong các giao diện trực quan bóng bẩy khác xa so với dòng lệnh mà hầu hết mọi người liên kết với Unix.

Các nền tảng di động lớn hiện nay dựa trên Unix cho thấy tính linh hoạt của nó. Nó cũ, nhưng dường như không có dấu hiệu chậm lại, mặc dù một trong những người sáng tạo ban đầu của nó, Dennis Ritchie, đã qua đời vào năm 2011. Vì vậy, lần tới khi bạn muốn nghĩ về điện thoại thông minh hoặc máy tính bảng của mình là hoàn toàn mới, hãy nghĩ lại - công nghệ hỗ trợ nó đã đi một chặng đường rất dài.