Unix

Од Сподели wiki
Преработка од 21:22, 27 март 2007; направена од Admin (разговор | придонеси)
(разл) ← Претходна преработка | Последна преработка (разл) | Следна преработка → (разл)
Прејди на прегледникот Прејди на пребарувањето

Unix е оперативен систем развиен во 60тите и 70тите години на минатиот век од група вработени хакери во AT&T, во Bell Labs, вклучувајќи ги Ken Thompson, Dennis Ritchie и Douglas McIlroy. Денес Unix системите се делат на многу гранки, развиени првенствено во AT&T, а исто така и од комерцијални снабдувачи на компјутерски услуги и непрофитни организации.

Денешните сопственици на Unux се The Open Group, конзорциум за зачувување на стандарди. Единствено системи кои се целосно компатибилни и цертифицирани според единствените Unix спецификации може да се оквалификуваат како "UNIX®" системи. Другите се наречени Unix-оидни системи или едноставно Unix-оиди.

Во текот на касните 70ти и раните 80ти години, влијанието на Unix во академските кругови доведе до негово широко прифаќање, првенствно на BSD варијантите кои произлегоа од Универзитетот во Калифорнија, Беркли. Најважен удел во прифаќањето и развојот на комерцијална Unix верзија имаат Sun Microsystems. Денес, постојат широко употребувани Unix-одни системи како што се Linux, Mac OS X и BSD деривати.

Некогаш традиционалниот термин Unix може да се користи за опишување на Unix како оперативен систем или Unix верзија 7 и Unix систем V.

Unix operating systems are widely used in both servers and workstations. The Unix environment and the client-server program model were essential elements in the development of the Internet and the reshaping of computing as centered in networks rather than in individual computers.

Both Unix and the C programming language were developed by AT&T and distributed to government and academic institutions, causing both to be ported to a wider variety of machine families than any other operating system. As a result, Unix became synonymous with "open systems".

Unix was designed to be portable, multi-tasking and multi-user in a time-sharing configuration. Unix systems are characterized by various concepts: the use of plain text for storing data; a hierarchical file system; treating devices and certain types of inter-process communication (IPC) as files; and the use of a large number of small programs that can be strung together through a command line interpreter using pipes, as opposed to using a single monolithic program that includes all of the same functionality. These concepts are known as the Unix philosophy.

Under Unix, the "operating system" consists of many of these utilities along with the master control program, the kernel. The kernel provides services to start and stop programs, handle the file system and other common "high level" tasks that most programs share, and, perhaps most importantly, schedules access to hardware to avoid conflicts if two programs try to access the same resource or device simultaneously. To mediate such access, the kernel was given special rights on the system and led to the division between user-space and kernel-space.

The microkernel tried to reverse the growing size of kernels and return to a system in which most tasks were completed by smaller utilities. In an era when a "normal" computer consisted of a hard disk for storage and a data terminal for input and output (I/O), the Unix file model worked quite well as most I/O was "linear". However, modern systems include networking and other new devices. Describing a graphical user interface driven by mouse control in an "event driven" fashion didn't work well under the old model. Work on systems supporting these new devices in the 1980s led to facilities for non-blocking I/O, forms of inter-process communications other than just pipes, as well as moving functionality such as network protocols out of the kernel.