Lịch sử của các hệ thống Unix. Sự khác biệt giữa Unix và Linux

Với ngôn ngữ cấp cao. Vào khoảng năm 1969, Ken Thompson, với sự hỗ trợ của Dennis Ritchi, đã phát triển và triển khai ngôn ngữ BB (B), được đơn giản hóa (để triển khai trên các máy tính mini) một biến thể của BCPL được phát triển thành ngôn ngữ. BI, như BCPL, là một ngôn ngữ giải thích. Năm 1972 đã được phát hành biên tập viên thứ hai. Unix, viết lại trong ngôn ngữ B bi. Năm 1969-1973. Dựa trên BI, một ngôn ngữ được biên dịch đã được phát triển, được gọi là SI (C).

Chia nhỏ

Một nguyên nhân quan trọng của sự phân chia SNIX là việc thực hiện ngăn xếp giao thức TCP / IP vào năm 1980. Trước đó, sự tương tác giữa cựu trong Unix đã ở giai đoạn sơ khai - cách quan trọng nhất để giao tiếp là UUCP (một phương tiện sao chép các tệp từ hệ thống UNIX sang hệ thống khác, ban đầu hoạt động trên các mạng điện thoại bằng Modem).

Hai giao diện lập trình ứng dụng mạng đã được đề xuất: Ổ cắm Berkley (Ổ cắm Berkeley) và Giao diện cấp độ vận chuyển TLI (Eng. Giao diện lớp vận chuyển).

Giao diện Socket Berkley được thiết kế tại Đại học Berkeley và đã sử dụng ngăn xếp giao thức TCP / IP được phát triển ibid. TLI đã được tạo AT & T theo định nghĩa về mức độ vận chuyển của mô hình OSI và lần đầu tiên xuất hiện trong hệ thống V phiên bản 3. Mặc dù phiên bản này chứa TLI và luồng, ban đầu nó không thực hiện TCP / IP hoặc các giao thức mạng khác , nhưng các triển khai như vậy được cung cấp bởi các công ty của bên thứ ba..

Việc triển khai TCP / IP chính thức và cuối cùng được bao gồm trong việc cung cấp cơ bản của hệ thống V phiên bản 4. Điều này, giống như các cân nhắc khác (phần lớn, thị trường), gây ra việc lấy mẫu cuối cùng giữa hai chi nhánh của Unix - BSD (Đại học Berkeley ) và hệ thống v (phiên bản thương mại từ AT & T). Sau đó, nhiều công ty, được hệ thống V cấp phép tại AT & T, đã phát triển các giống của riêng của họ, chẳng hạn như AIX, Clix, HP-UX, IRIX, Solaris.

Các triển khai hiện đại của UNIX thường không phải là hệ thống V hoặc BSD ở dạng tinh khiết. Họ thực hiện các khả năng của cả hệ thống V và BSD.

Hệ điều hành giống như Unix miễn phí

Hiện tại, GNU / Linux và đại diện của gia đình BSD nhanh chóng quyết định thị trường giữa các hệ thống UNIX thương mại và thâm nhập đồng thời cả hai máy tính để bàn của các hệ thống người dùng cuối và di động và nhúng.

Hệ thống độc quyền

Sau khi tách công ty AT & T, nhãn hiệu UNIX và quyền của mã nguồn ban đầu đã nhiều lần thay đổi chủ sở hữu, đặc biệt là họ thuộc về Novell.

Ảnh hưởng của Unix về sự phát triển của các hệ điều hành

Các hệ thống UNIX có tầm quan trọng lịch sử tuyệt vời, bởi vì nhờ vào họ, một số khái niệm và cách tiếp cận phổ biến trong lĩnh vực hệ điều hành và phần mềm lây lan. Ngoài ra, trong quá trình phát triển các hệ thống Unix, ngôn ngữ C đã được tạo.

Ngôn ngữ SI được sử dụng trong lập trình hệ thống, được tạo ban đầu cho sự phát triển Unix, vượt quá Unix phổ biến. Ngôn ngữ SI là ngôn ngữ "miễn cưỡng" đầu tiên không cố gắng áp đặt một lập trình viên cho một lập trình viên. SI là ngôn ngữ cấp cao đầu tiên cung cấp quyền truy cập vào tất cả các khả năng của bộ xử lý, chẳng hạn như tài liệu tham khảo, bảng, dịch chuyển bit, gia tăng, v.v., v.v., tự do ngôn ngữ SI đã dẫn đến các lỗi tràn bộ đệm trong Các chức năng như vậy của thư viện SI tiêu chuẩn như Gets và Scanf. Kết quả là nhiều lỗ hổng đáng buồn được biết đến, ví dụ, đó đã được khai thác trong Cherwe nổi tiếng của Morris.

Các nhà phát triển Unix đầu tiên đã đóng góp vào việc thực hiện các nguyên tắc tái sử dụng và lập trình mô-đun trong thực hành kỹ thuật.

UNIX cung cấp khả năng sử dụng các giao thức TCP / IP trên các máy tính tương đối phải chăng, dẫn đến tăng trưởng Internet nhanh chóng. Điều này, lần lượt, đã góp phần phát hiện nhanh chóng một số lỗ hổng lớn trong hệ thống an ninh, kiến \u200b\u200btrúc và tiện ích hệ thống UNIX.

Theo thời gian, các nhà phát triển Unix hàng đầu đã phát triển các chuẩn mực văn hóa phát triển phần mềm trở nên quan trọng như nhau như chính Unix. ( )

Một trong những ví dụ nổi tiếng nhất về HĐH giống như UNIX là MacOS, ai? ] Unix sau đó có những thiếu sót so với dữ liệu hệ điều hành (ví dụ: thiếu các công cụ cơ sở dữ liệu nghiêm túc), đó là: a) rẻ hơn và đôi khi miễn phí cho các tổ chức học thuật; b) Tôi đã được chuyển từ thiết bị này sang thiết bị này sang thiết bị và được phát triển trên một ngôn ngữ SI di động, mà các chương trình phát triển "chưa được phát triển từ các thiết bị cụ thể. Ngoài ra, trải nghiệm người dùng - một người làm việc với UNIX trên VAX cũng "gắn" từ thiết bị và nhà sản xuất, và dễ dàng làm việc với nó ở mức 68xxx, v.v.

Các nhà sản xuất thiết bị tại thời điểm đó thường rất tuyệt đối với Unix, xem xét đồ chơi CNTT và cung cấp hệ điều hành độc quyền của họ cho công việc nghiêm túc - chủ yếu là các ứng dụng kinh doanh dựa trên doanh nghiệp và DBMS trong các cấu trúc thương mại. Nhận xét được biết về điều này từ ngày 12 tháng 12 về VMS của nó. Các tập đoàn đã được lắng nghe điều này, nhưng không phải là một môi trường học tập có mọi thứ cần thiết cho bản thân ở Unix, thường không yêu cầu sự hỗ trợ chính thức từ nhà sản xuất, đối phó với chính họ và đánh giá cao sự rẻ tiền và tính di động của Unix. Do đó, Unix gần như là người đầu tiên có thể chấp nhận được hệ điều hành thiết bị khác nhau.

Sự gia tăng mạnh thứ hai của UNIX là sự xuất hiện của các bộ xử lý RISC vào khoảng năm 1989. Ngay cả trước đó đã có T. N. Máy trạm - Máy tính công suất cao của người dùng cá nhân có dung lượng bộ nhớ đủ, đĩa cứng và hệ điều hành khá phát triển (đa nhiệm, bảo vệ bộ nhớ) để hoạt động với các ứng dụng nghiêm trọng, chẳng hạn như CADS. Trong số các nhà sản xuất máy móc như vậy, Sun microsystems đã làm nổi bật, người đã đặt tên cho họ.

Trước khi xuất hiện các bộ xử lý RISC, bộ xử lý Motorola 680x0 thường được sử dụng trong các trạm này, giống nhau trong các máy tính của Apple (mặc dù dưới hệ điều hành phát triển hơn Apple). Khoảng năm 1989, triển khai thương mại của bộ xử lý kiến \u200b\u200btrúc RISC xuất hiện trên thị trường. Giải pháp hợp lý của một số công ty (Sun và những người khác) là việc chuyển giao UNIX cho các kiến \u200b\u200btrúc này, điều này ngay lập tức đòi hỏi và chuyển toàn bộ hệ sinh thái phần mềm cho Unix.

OS nghiêm túc độc quyền, chẳng hạn như VM, bắt đầu hoàng hôn của họ từ bây giờ (ngay cả khi có thể chuyển HĐH vào RISC, mọi thứ phức tạp hơn nhiều với các ứng dụng dưới cô ấy, trong đó trong các hệ sinh thái này thường được phát triển trên trình biên dịch biên giới hoặc Trên các ngôn ngữ độc quyền như Bliss) và Unix đã trở thành một hệ điều hành cho các máy tính mạnh nhất trên thế giới.

Tuy nhiên, tại thời điểm này, hệ sinh thái bắt đầu đi đến GUI khi đối mặt với Windows 3.0. Những lợi thế lớn của GUI, cũng như, ví dụ, hỗ trợ thống nhất cho tất cả các loại máy in, được đánh giá bởi các nhà phát triển và người dùng. Nó làm suy yếu mạnh về vị trí UNIX trong thị trường PC - các triển khai như SCO và Interactive Unix đã không đối phó với hỗ trợ cho các ứng dụng Windows. Đối với GUI cho UNIX, được gọi là X11 (có các triển khai khác, ít phổ biến hơn), anh ta không thể làm việc hoàn toàn trên PC tùy chỉnh thông thường do yêu cầu bộ nhớ - Đối với hoạt động bình thường X11 được yêu cầu 16 MB, trong khi Windows 3.1 có đủ hiệu suất Thực hiện cả Word và Excel cùng lúc trong 8 MB (đó là một kích thước bộ nhớ PC tiêu chuẩn tại thời điểm đó). Với giá cao cho bộ nhớ, đó là một yếu tố hạn chế.

Thành công của Windows đã đưa ra một dự án của Microsoft nội bộ được gọi là Windows NT, tương thích với Windows trên API, nhưng đồng thời có tất cả các tính năng kiến \u200b\u200btrúc giống nhau của HĐH nghiêm túc, là UNIX - Đa nhiệm, bảo vệ bộ nhớ đầy đủ , Hỗ trợ cho máy đa bộ xử lý, quyền truy cập tệp và danh mục, nhật ký hệ thống. Ngoài ra, Windows NT đã giới thiệu hệ thống nhật ký NTFS, theo các khả năng tại thời điểm đó vượt quá tất cả các hệ thống tệp tiêu chuẩn của hệ thống tệp UNIX chỉ riêng các sản phẩm thương mại từ Veritas và các hệ thống khác.

Mặc dù ban đầu Windows NT không phổ biến, do các yêu cầu bộ nhớ cao (cùng 16 MB), nó đã cho phép Microsoft nhập các giải pháp cho máy chủ, ví dụ, DBMS. Nhiều người lúc đó không tin vào khả năng của Microsoft, truyền thống chuyên về phần mềm máy tính để bàn, để trở thành người chơi trên thị trường trên thang điểm của doanh nghiệp, nơi đã có những cái tên lớn của họ, chẳng hạn như Oracle và Sun. Câu hỏi này đã được thêm vào thực tế là Microsoft DBMS - SQL Server - bắt đầu như một phiên bản đơn giản hóa của Sybase SQL Server, được cấp phép từ Sybase và tương thích 99% trong tất cả các khía cạnh làm việc với nó.

Trong nửa cuối những năm 1990, Microsoft bắt đầu được trao đổi bởi Unix và trên thị trường máy chủ doanh nghiệp.

Sự kết hợp của các yếu tố trên, cũng như sự sụp đổ của giá cả cho các hệ thống đơn điệu video 3D, đã trở thành nhà từ các thiết bị chuyên nghiệp, về cơ bản đã giết chết khái niệm về máy trạm vào đầu những năm 2000.

Ngoài ra, các hệ thống Microsoft sẽ dễ quản lý hơn, đặc biệt là trong các kịch bản sử dụng điển hình.

Nhưng tại thời điểm này, sắc nét thứ ba cất cánh unix.

Tuy nhiên, đối thủ cạnh tranh nghiêm trọng của FreeBSD là FreeBSD, phong cách quản lý "Nhà thờ" theo phong cách Linux "thị trường đối trọng, cũng như nhiều kỹ thuật hơn trong các vấn đề như vậy như hỗ trợ máy đa bộ xử lý và định dạng của các tệp thực thi, chậm lại Sự phát triển của FreeBSD so với Linux, làm cho thế giới hàng đầu cuối cùng của phần mềm miễn phí.

Linux đạt được thêm một tầm cao mới và mới:

  • chuyển các sản phẩm độc quyền chính như Oracle;
  • quan tâm nghiêm trọng IBM đến hệ sinh thái này làm cơ sở cho các giải pháp dọc của nó;
  • sự xuất hiện của các tương tự của hầu hết các chương trình theo thói quen từ thế giới của Windows;
  • từ chối một số nhà sản xuất thiết bị từ các cửa sổ cài sẵn bắt buộc;
  • việc phát hành netbook với một mình linux;
  • sử dụng như một lõi trong Android.

Hiện tại, Linux là một hệ điều hành phổ biến xứng đáng cho các máy chủ, mặc dù ít phổ biến hơn trên máy tính để bàn.

Nếu gần đây bạn bắt đầu học Linux và làm chủ vũ trụ lớn này, thì có lẽ thường gặp thuật ngữ Unix. Nó nghe rất giống với Linux, nhưng nó có nghĩa là gì? Có lẽ, bạn tự hỏi Unix khác với Linux. Câu trả lời cho câu hỏi này phụ thuộc vào những gì bạn hiểu dưới những từ này. Rốt cuộc, mỗi người trong số họ có thể được giải thích theo những cách khác nhau. Trong bài viết này, chúng tôi sẽ xem xét lịch sử đơn giản hóa của Linux và Unix để giúp bạn hiểu nó là gì và chúng được kết nối với nhau như thế nào. Như mọi khi, bạn có thể đặt câu hỏi hoặc thêm thông tin bổ sung trong các ý kiến.

Unix đã bắt đầu lịch sử vào cuối những năm 1960 và đầu những năm 1970 tại các phòng thí nghiệm tính toán nghiên cứu nghiên cứu của AT & T Bell Labs ở Hoa Kỳ. Cùng với MIT và phòng thí nghiệm phòng thí nghiệm nghiên cứu điện chung bắt đầu phát triển một hệ điều hành mới. Một số nhà nghiên cứu không hài lòng với sự phát triển của hệ điều hành này. Họ rời khỏi công việc trong dự án chính và bắt đầu phát triển hệ điều hành của riêng mình. Năm 1970, hệ thống này được gọi là Unix và hai năm sau, cô đã được viết lại hoàn toàn trong ngôn ngữ lập trình SI.

Điều này làm cho nó có thể phân phối và cổng Unix với các thiết bị và nền tảng tính toán khác nhau.

Vì Unix vẫn tiếp tục phát triển, AT & T bắt đầu bán giấy phép sử dụng nó tại các trường đại học, cũng như cho mục đích thương mại. Điều này có nghĩa là không phải ai cũng có thể, như bây giờ, để thay đổi và phân phối mã hệ điều hành Onix. Chẳng mấy chốc, nhiều phiên bản và tùy chọn cho hệ điều hành Unix, được thiết kế để giải quyết các nhiệm vụ khác nhau, bắt đầu xuất hiện. Nổi tiếng nhất trong số họ là BSD.

Linux tương tự như Unix về chức năng và khả năng, nhưng không phải là một cơ sở mã. Hệ điều hành này được thu thập từ hai dự án. Đầu tiên là dự án GNU được phát triển bởi Richard Podlotman vào năm 1983, nhân thứ hai - Linux được viết bởi Linus Torvalds vào năm 1991.

Mục tiêu của dự án GNU là tạo ra một hệ thống tương tự như Unix, nhưng độc lập với nó. Nói cách khác, một hệ điều hành không chứa mã UNIX, có thể tự do lan truyền và sửa đổi mà không bị hạn chế là phần mềm miễn phí. Vì nhân Linux miễn phí không thể tự hoạt động, dự án GNU đã hợp nhất với Linux Core và hệ điều hành Linux được sinh ra.

Linux được xây dựng dưới ảnh hưởng của hệ thống Minix, một Unix hậu duệ, nhưng tất cả các mã được viết từ đầu. Không giống như Unix, được sử dụng trên máy chủ và máy tính lớn lớn của các doanh nghiệp khác nhau, Linux được thiết kế để sử dụng trên máy tính gia đình với phần cứng đơn giản hơn.

Đến nay, Linux hoạt động trên một số lượng lớn các nền tảng, lớn hơn bất kỳ hệ điều hành nào khác, nó là máy chủ, hệ thống nhúng, máy vi tính, modem và thậm chí cả điện thoại di động. Bây giờ sự khác biệt Linux và Unix sẽ được xem xét chi tiết hơn.

Unix là gì

Thuật ngữ UNIX có thể liên quan đến các khái niệm như vậy:

  • Hệ điều hành ban đầu được phát triển tại AT & T Bell Labs, trên cơ sở mà OS khác phát triển.
  • Nhãn hiệu được viết bằng chữ in hoa. Unix thuộc nhóm mở, nơi đã phát triển một bộ tiêu chuẩn cho các hệ điều hành - Đặc tả duy nhất của UNIX. Chỉ những hệ thống đáp ứng các tiêu chuẩn có thể được gọi là Unix. Chứng nhận không miễn phí và yêu cầu các nhà phát triển phải trả tiền cho việc sử dụng nhãn hiệu này.
  • Tất cả các hệ điều hành được đăng ký với tên Unix. Bởi vì họ tuân thủ các tiêu chuẩn nói trên. AIX, A / UX, HP-UX này, Truyền cảm hứng K-UX, Unix, Solaris, IRIX, TRU64, UNIXware, Z / OS và OS X - Vâng, ngay cả những người hoạt động trên các máy tính Apple.

Linux.

Thuật ngữ Linux chỉ áp dụng cho kernel. Hệ điều hành sẽ không hoàn toàn không có môi trường và ứng dụng máy tính để bàn. Vì hầu hết các ứng dụng đã được phát triển và hiện đang được phát triển như một phần của dự án GNU, tên đầy đủ của hệ điều hành là GNU / Linux.

Bây giờ nhiều người sử dụng thuật ngữ Linux để biểu thị tất cả dựa trên Kernel Linux, các bản phân phối. Hiện tại, phiên bản mới của Linux Kernel là 4.4, phiên bản 4.5 đang ở giai đoạn phát triển. Thay đổi việc đánh số các bản phát hành kernel từ 3.x đến 4.x diễn ra cách đây không lâu.

Linux là một unix như một hệ điều hành hoạt động như unix, nhưng không chứa mã của nó. Hệ điều hành tương tự UNIX thường được gọi là un * x, * nix và * n? X hoặc thậm chí unixoids. Linux không có chứng nhận UNIX và GNU được giải mã là GNU chứ không phải UNIX, vì vậy trong sự tôn trọng này Mac OS X là UNIX nhiều hơn Linux. Tuy nhiên, Kernel Linux và HĐH GNU Linux rất giống với Unix về chức năng, hầu hết các nguyên tắc triết học UNIX được thực hiện. Mã có thể đọc được, lưu trữ cấu hình hệ thống trong các tệp văn bản riêng biệt, cũng như sử dụng các công cụ dòng lệnh nhỏ, trình quản lý phiên và trình quản lý phiên.

Điều quan trọng cần lưu ý là không phải tất cả các hệ thống không nhận được chứng nhận UNIX. Trong một bối cảnh cụ thể, tất cả các hệ điều hành dựa trên Unix hoặc trên các ý tưởng của nó được gọi là UNIX thích, bất kể họ có chứng chỉ UNIX hay không. Ngoài ra, họ có thể là thương mại và miễn phí.

Tôi hy vọng bây giờ nó đã trở nên rõ ràng hơn những gì Unix khác với Linux. Nhưng hãy đi xa hơn và tóm tắt.

Sự khác biệt chính

  • Linux là một hệ điều hành nguồn mở và Unix gốc là không, ngoại trừ một số lượng xuất phái sinh của nó.
  • Linux là một bản sao của unix gốc, nhưng nó không chứa mã của nó.
  • Sự khác biệt chính giữa Unix từ Linux, Linux đó chỉ là kernel, trong khi Unix là một hệ điều hành đầy đủ.
  • Linux được thiết kế cho máy tính cá nhân. Một Unix chủ yếu được định hướng trên các máy trạm và máy chủ lớn.
  • Ngày nay, Linux hỗ trợ nhiều nền tảng hơn Unix.
  • Linux hỗ trợ nhiều loại hệ thống tệp hơn Unix.

Như bạn có thể thấy, sự nhầm lẫn thường phát sinh do thực tế là Linux vs Unix có thể có nghĩa là những thứ hoàn toàn khác nhau. Bất cứ điều gì tầm quan trọng trong tâm trí, thực tế vẫn là thực tế - Unix là người đầu tiên và Linux xuất hiện sau. Linux được sinh ra từ mong muốn tự do phần mềm và khả năng di động, lấy cảm hứng từ phương pháp UNIX. Chúng ta có thể nói một cách an toàn rằng tất cả chúng ta đang mắc nợ trước khi chuyển động của phần mềm miễn phí, bởi vì thế giới sẽ tồi tệ hơn nhiều mà không có nó.

Sandbox.

người Sắt Ngày 19 tháng 3 năm 2011 lúc 23:16

Linux khác với unix và hệ điều hành giống như unix là gì?

Unix.
Unix. (không có giá trị nó Nhầm lẫn với định nghĩa về hệ điều hành giống như Unix) là một gia đình của các hệ điều hành (Mac OS X, GNU / Linux).
Hệ thống đầu tiên được phát triển vào năm 1969 tại Phòng thí nghiệm Bell, cựu Tổng công ty Mỹ.

Các tính năng đặc biệt của UNIX:

  1. Cấu hình đơn giản của hệ thống bằng cách sử dụng đơn giản, thường là văn bản, tệp.
  2. Sử dụng rộng rãi dòng lệnh.
  3. Sử dụng băng tải.
Ngày nay, Unix được sử dụng chủ yếu trên các máy chủ, và là một hệ thống cho thiết bị.
Không thể không lưu ý tầm quan trọng lịch sử lớn của các hệ thống UNIX. Hiện tại, họ được công nhận là một trong những HĐH quan trọng nhất trong lịch sử. Trong quá trình phát triển các hệ thống UNIX, ngôn ngữ C đã được tạo.

Tùy chọn Unix trong nhiều năm

Hệ điều hành giống như Unix
Hệ điều hành giống như Unix (đôi khi Sử dụng giảm * NIX) - một hệ thống được hình thành dưới ảnh hưởng của UNIX.

Từ Unix được sử dụng như một dấu hiệu của sự phù hợp và như một nhãn hiệu.

Tập đoàn nhóm mở có nhãn hiệu "Unix", nhưng nổi tiếng nhất là một cơ quan chứng nhận cho thương hiệu UNIX. Gần đây, nhóm mở có ánh sáng biến mất liên quan đến việc xuất bản thông số kỹ thuật Đặc tả UNIX duy nhất, phải đáp ứng HĐH để tự hào được gọi là UNIX.

Bạn có thể nhìn vào cây phả hệ của các hệ điều hành giống UNIX.

Linux.
Linux. - Tên chung của các hệ điều hành hỗ trợ Unix, được thiết kế trong dự án GNU (dự án phát triển SPO). Linux hoạt động trên vô số kiến \u200b\u200btrúc bộ xử lý khổng lồ, từ cánh tay kết thúc Intel x86.

Các phân phối nổi tiếng và phân tán nhất là Arch Linux, Centos, Debian. Ngoài ra còn có nhiều "trong nước", các bản phân phối tiếng Nga - Alt Linux, Asplinux và những người khác.

Có khá nhiều tranh chấp GNU / Linux.
Những người ủng hộ "Nguồn mở" Sử dụng thuật ngữ "Linux" và những người ủng hộ "Phần mềm miễn phí" - "GNU / Linux". Tôi thích lựa chọn đầu tiên. Đôi khi để thuận tiện để xem thuật ngữ GNU / Linux, "GNU + Linux", "GNU-Linux", "GNU Linux" đang viết.

Không giống như các hệ thống thương mại (MS Windows, Mac OS X) Linux không có trung tâm phát triển địa lý và một tổ chức nào đó sẽ sở hữu hệ thống. Hệ thống và các chương trình cho chính nó là kết quả của công việc của cộng đồng lớn, hàng ngàn dự án. Tham gia dự án hoặc tạo tất cả mọi người của riêng bạn!

Đầu ra
Do đó, chúng tôi đã có một chuỗi: unix -\u003e os giống như unix -\u003e linux.

Tóm lại, tôi có thể nói rằng sự khác biệt giữa Linux và Unix là rõ ràng. Unix là một khái niệm rộng lớn hơn nhiều, nền tảng để xây dựng và chứng nhận tất cả các hệ thống giống như Unix và Linux là một trường hợp cụ thể của UNIX.

Tags: unix, linux, nix, linux, unix

Bài viết này không phải là bình luận, vì tác giả của nó vẫn chưa

Hệ thống này đã vượt qua thời gian thử nghiệm và sống sót.

Liên quan đến hệ thống này, hệ thống tiêu chuẩn đã được phát triển:

POSIX 1003.1-1988, 1990 - Cuộc gọi hệ thống Unix (điểm đăng nhập) được mô tả

(Giao diện lập trình ứng dụng - API)

POSIX 1003.2-1992 - Chỉ định trình thông dịch lệnh và một tập hợp các tiện ích UNIX

POSIX 1003.1B-1993 - Bổ sung liên quan đến các ứng dụng thời gian thực

X / Mở - một nhóm phối hợp sự phát triển của các tiêu chuẩn theo Unix OS

Các tính năng đặc biệt của Unix OS

    Hệ thống được viết bằng ngôn ngữ cấp cao (C), điều này làm cho nó có sẵn để hiểu, thay đổi và chuyển sang các nền tảng phần cứng khác. Unix là một trong những hệ thống mở nhất.

    Unix là một hệ thống đa tác vụ, nhiều người chơi với một loạt các dịch vụ. Một máy chủ có thể phục vụ các truy vấn của một số lượng lớn người dùng. Đồng thời chỉ cần quản lý một hệ thống người dùng.

    Có sẵn các tiêu chuẩn. Mặc dù có nhiều phiên bản, nền tảng của toàn bộ gia đình Unix là một kiến \u200b\u200btrúc giống hệt và một số giao diện tiêu chuẩn, giúp đơn giản hóa việc chuyển đổi người dùng khỏi hệ thống này sang hệ thống khác.

    Giao diện người dùng đơn giản nhưng mạnh mẽ. Có một bộ tiện ích nhất định, mỗi tiện ích giải quyết một nhiệm vụ chuyên môn cao và bạn có thể xây dựng các phức hợp xử lý phần mềm phức tạp.

    Việc sử dụng hệ thống tệp tập trung đơn phân cấp thống nhất, cung cấp quyền truy cập vào dữ liệu được lưu trữ trong các tệp đĩa và thiết bị máy tính thông qua giao diện hệ thống tệp thống nhất.

    Một số lượng lớn các ứng dụng, bao gồm cả phân phối tự do.

Khái niệm cơ bản về kiến \u200b\u200btrúc của hệ điều hành Unix hệ thống Unix.

Cấu trúc lõi hệ điều hành unix.

Unix là một mô hình hệ thống hai cấp: lõi và ứng dụng.

Kernel tương tác trực tiếp với phần phần cứng của máy tính, cách ly các chương trình ứng dụng khỏi các tính năng phần cứng của hệ thống tính toán.

Kernel có một bộ dịch vụ được cung cấp cho các ứng dụng. Chúng bao gồm các hoạt động đầu vào / đầu ra, quản lý và xử lý quy trình, tương tác giữa các quy trình, tín hiệu, v.v.

Tất cả các ứng dụng yêu cầu dịch vụ kernel thông qua hệ thống cuộc gọi.

Cấp độ thứ hai là các ứng dụng hoặc nhiệm vụ như toàn thân, xác định chức năng tổng thể của hệ thống và ứng dụng, cung cấp giao diện người dùng Unix. Đề án tương tác của tất cả các ứng dụng với kernel là như nhau.

Cốt lõi Cung cấp chức năng cơ bản của hệ điều hành, tạo các quy trình và quản lý chúng, phân phối bộ nhớ và cung cấp quyền truy cập vào các tệp và thiết bị ngoại vi. Sự tương tác của các tác vụ được áp dụng với kernel xảy ra thông qua giao diện cuộc gọi hệ thống tiêu chuẩn. Giao diện cuộc gọi hệ thống là một tập hợp các dịch vụ Kernel và xác định định dạng của yêu cầu dịch vụ.

Quá trình yêu cầu dịch vụ của một quy trình cụ thể thông qua cuộc gọi hệ thống được chuẩn hóa, bên ngoài tương tự như cuộc gọi thông thường đến chức năng thư viện của ngôn ngữ SI. Kernel thay mặt quy trình xử lý yêu cầu và trả về dữ liệu cần thiết cho quy trình.

Kernel bao gồm ba hệ thống con chính:

1) Hệ thống con tập tin;

2) Hệ thống con I / O;

3) Hệ thống con quản lý quy trình và bộ nhớ.

Hệ thống con tập tin Cung cấp một giao diện truy cập dữ liệu thống nhất nằm trên ổ đĩa và thiết bị ngoại vi. Các mục nhập giống nhau / đọc có thể được sử dụng khi làm việc với các tệp trên đĩa và khi nhập thiết bị đầu cuối dữ liệu, máy in và các thiết bị bên ngoài khác.

Hệ thống con tệp điều khiển quyền truy cập vào tệp, thực hiện thao tác và xóa tệp, ghi và đọc dữ liệu.

Vì hầu hết các hàm ứng dụng sử dụng giao diện hệ thống tệp trong công việc của chúng, quyền truy cập tệp phần lớn xác định các đặc quyền của quyền truy cập của người dùng vào hệ thống. Do đó, các đặc quyền của người dùng cá nhân được hình thành.

Ba loại người dùng được liên kết với mỗi tệp:

Chủ nhân;

Chủ nhóm;

Người dùng khác.

Hệ thống con tập tin cung cấp các yêu cầu chuyển tiếp được gửi đến các thiết bị ngoại vi tương ứng với các mô-đun của các hệ thống con đầu vào / đầu ra.

Hệ thống con I / O xử lý các yêu cầu hệ thống con tệp và hệ thống con quản lý quy trình để truy cập các thiết bị ngoại vi, cung cấp bộ đệm dữ liệu cần thiết và tương tác với trình điều khiển thiết bị.

Trình điều khiển là các mô-đun hạt nhân đặc biệt phục vụ trực tiếp các thiết bị bên ngoài.

Hệ thống con quản lý bộ nhớ và xử lý bộ nhớ Kiểm soát việc tạo và loại bỏ các quy trình, phân phối tài nguyên hệ thống, bộ nhớ và bộ xử lý giữa các quy trình, đồng bộ hóa các quy trình, tương tác giữa các bộ phận.

Phân phối tài nguyên hệ thống Nhiệm vụ cốt lõi đặc biệt được gọi là người lập kế hoạch quy trình. Planner ra mắt các quy trình hệ thống và đảm bảo rằng quy trình không thu được tài nguyên hệ thống được chia sẻ.

Mô-đun kiểm soát bộ nhớ Cung cấp vị trí RAM cho các nhiệm vụ được áp dụng, bao gồm cả ảo. Điều này có nghĩa là nó cung cấp khả năng đặt một phần của quá trình trong bộ nhớ thứ cấp (I.E. Trên đĩa cứng) và di chuyển nó thành RAM khi cần.

Quá trình giải phóng bộ xử lý trước hoạt động I / O dài hạn hoặc dừng lượng tử thời gian. Trong trường hợp này, bộ lập lịch chọn quy trình tiếp theo với mức độ ưu tiên cao nhất và khởi chạy nó để thực thi.

Mô-đun tương tác giữa các diễn ứng Chịu trách nhiệm thông báo các quy trình về các sự kiện bằng cách sử dụng tín hiệu và cung cấp khả năng chuyển dữ liệu giữa các quy trình khác nhau.

Thông tin ngắn gọn về sự phát triển của Unix OS

Unix OS xuất hiện vào cuối thập niên 60, với tư cách là một hệ điều hành cho Mini-Computer PDP-7. Kenneth Thomson và Dennis Ritchi đã chấp nhận sự tham gia tích cực vào sự phát triển.

Các tính năng của Unix OS: Chế độ nhiều người chơi, Kiến trúc hệ thống tệp mới, v.v.

Năm 1973, hầu hết cốt lõi hệ điều hành đã được viết lại bằng ngôn ngữ mới C.

Kể từ năm 1974, Unix đã được phân phối tại các trường đại học Hoa Kỳ trong các mã nguồn.

Phiên bản UNIX

Ngay từ đầu phân phối Unix, các phiên bản khác nhau của HĐH đã bắt đầu xuất hiện trong các trường đại học Mỹ.

Để đặt hàng, AT & T năm 1982 kết hợp một số phiên bản cho một phiên bản được gọi là biến thể OS - System III. Năm 1983, một phiên bản thương mại đã được ban hành - System V. Năm 1993, AT & T đã bán các quyền của mình cho Công ty Unix Novell, hoạt động tiếp theo của Tập đoàn X / Open và Santa Cruz (SCO).

Dòng khác của Unix - BSD đang được phát triển tại Đại học California (Berkeley). Có các phiên bản miễn phí của FreeBSD, OpenBSD.

Gia đình OSF / 1 Open Software Foundation bao gồm một tập đoàn IBM, DEC và Hewlett Packard. Số lượng gia đình này bao gồm - HP-UX, AIX, Digital Unix.

Phiên bản miễn phí của gia đình Unix

Có một số lượng lớn các phiên bản miễn phí của UNIX.

FreeBSD, NetBSD, OpenBSD - Các biến thể được phát triển trên cơ sở hệ điều hành BSD.

Gia đình phổ biến nhất của hệ thống Unix miễn phí là một hệ thống gia đình. Linux.. Phiên bản Linux đầu tiên được phát triển bởi Linus Torvalds vào năm 1991. Hiện tại có một số tùy chọn. Linux: mũ đỏ, mandrake, slackware, suse, debian.

Các tính năng chung của hệ thống UNIX

Các tùy chọn Unix khác nhau có một số tính năng phổ biến:

Xử lý đa hình trong chế độ tách thời gian dựa trên đa nhiệm thay thế;

Hỗ trợ chế độ nhiều người chơi;

Sử dụng bộ nhớ ảo và các cơ chế trao đổi;

Hệ thống tập tin phân cấp;

Thống nhất các hoạt động I / O dựa trên việc sử dụng nâng cao của tệp khái niệm;

Dung sai của hệ thống;

Có sẵn các công cụ tương tác mạng.

Ưu điểm của hệ thống UNIX

Theo số lượng lợi thế của gia đình UNIX bao gồm:



Tính di động;

Thực hiện hiệu quả đa nhiệm;

Sự cởi mở;

Sẵn có và tuân thủ nghiêm ngặt các tiêu chuẩn;

Hệ thống tập tin duy nhất;

Ngôn ngữ lệnh mạnh mẽ;

Sự hiện diện của một số lượng đáng kể các sản phẩm phần mềm;

Thực hiện ngăn xếp giao thức TCP / IP;

Khả năng làm việc như một máy chủ hoặc máy trạm.

Máy chủ dựa trên UNIX

Máy chủ là một máy tính xử lý các máy tính khác trong mạng và cung cấp tài nguyên của riêng bạn để lưu trữ, xử lý và truyền dữ liệu. Máy chủ Unix có thể thực hiện các vai trò sau:

Máy chủ tập tin;

Máy chủ web;

Máy chủ thư;

Máy chủ đăng ký từ xa (xác thực);

Dịch vụ web Máy chủ phụ trợ (DNS, DHCP);

Internet Truy cập Internet Internet

Quản lý máy tính chạy Unix

Khi làm việc với hệ thống UNIX ở chế độ máy chủ, chế độ truy cập từ xa được sử dụng bằng một số chương trình thiết bị đầu cuối.

Phiên làm việc bắt đầu với mục nhập của tên đăng ký và mật khẩu của Access.

Thông thường, để giải các tác vụ quản lý máy chủ được giới hạn ở chế độ lệnh của lệnh. Trong trường hợp này, để kiểm soát đầu vào của các lệnh đặc biệt vào dòng lệnh trong một định dạng đặc biệt được sử dụng. Dòng lệnh có một lời mời đặc biệt, ví dụ:

Quan điểm chung của đội:

  1. -bash-2.05b $ lệnh [tùy chọn] [tham số]

Ví dụ: lệnh gọi chứng chỉ trên HĐH có biểu mẫu:

  1. -Bash-2.05b $ man [phím] [chủ đề]
  2. Để gọi trợ giúp để sử dụng lệnh man, nhập
  3. -Bash-2.05b $ Man Man

Giải thích dòng lệnh

Khi nhập các lệnh, các thỏa thuận sau được sử dụng:

Từ đầu tiên trên dòng lệnh là tên của nhóm;

Các từ còn lại là đối số.

Trong số các đối số được phân bổ các khóa (tùy chọn) - được xác định trước cho mỗi lệnh Word (ký hiệu) bắt đầu bằng một (định dạng ngắn) hoặc các cặp dấu gạch nối (định dạng dài). Ví dụ:

Bash-2.05b $ tar -c -f arch.tar * .c

Bash-2.05b $ tar - -create - -file \u003d arch.tar * .c

Khi chỉ định các tùy chọn, chúng có thể được kết hợp. Ví dụ: các lệnh sau bằng nhau:

Bash-2.05b $ ls -a -l -l

Bash-2.05b $ ls -l -a

Bash-2.05b $ ls -al

Các đối số khác cho thấy các đối tượng đối với các hoạt động được thực hiện.

Vỏ biến

Khi làm việc trong hệ thống, có một cách để chuyển các tham số đến chương trình, ngoại trừ việc sử dụng các phím shell lệnh - việc sử dụng các biến môi trường. Để chỉ định biến môi trường, hãy sử dụng lệnh SET. Định dạng nhóm:

Bash-2.05b $ set_name_name \u003d giá trị

Xóa biến môi trường được thực hiện bởi lệnh unset.

Để tham khảo giá trị biến, chỉ định được sử dụng $ _name_name, ví dụ, lệnh:

Bash-2.05B $ echo $ PATH

Giá trị của biến đường dẫn.