Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Sprite – Калифорния университетінің Берклидегі Джон Остерхауттың зерттеу тобы 1984-1992 жылдар аралығында жасаған эксперименталдық Unix-тәрізді таратылған операциялық жүйе. Оның ерекше ерекшеліктері компьютерлік кластерлердегі біртұтас жүйелік бейнелеуді қолдауы және журналдық құрылымды файлдық жүйенің енгізілуі. Tcl сценарийлік тілі де осы жобаның нәтижесінде пайда болды.
Sprite is an experimental Unix like distributed operating system developed at the University of California, Berkeley by John Ousterhout's research group between 1984 and 1992. Its notable features include support for single system image on computer clusters and the introduction of the log structured file system. The Tcl scripting language also originated in this project.
Алғашқы жұмыстар
Sprite-тің бастапқы жұмыстары операциялық жүйені "желіге сезімтал" ету идеясына негізделген, соның арқасында оны пайдаланушы үшін көрінбейтін ету мақсаты қойылған. Басты жұмыс саласы – өнімділікті арттыру үшін локальді клиенттік кэштеуді кеңінен пайдаланатын жаңа желілік файлдық жүйені құру болды. Файл ашылғаннан және бастапқы оқылымдардан кейін желі тек қажет болғанда ғана қолданылады, ал пайдаланушының көптеген әрекеттері кэшпен жүзеге асырылады. Ұқсас құралдар қашықтағы құрылғыларды жергілікті компьютердің кеңістігіне бейнелеуге мүмкіндік береді, осы арқылы желілік басып шығару және осыған ұқсас тапсырмаларды орындауға болады. Unix-тің көптеген негізгі файлдары желіге негізделген, оның ішінде пароль файлы да бар. Желідегі барлық машиналар түбірлік каталогты ортақ пайдаланады. Finger сияқты басқа да кең таралған Unix құралдары желіге сезімтал болу үшін қайта жазылды, желідегі барлық кірген адамдардың тізімін көрсетті. Бұл Sprite желісін бір үлкен уақытты бөлісу жүйесі немесе біртұтас жүйелік бейне сияқты көрінеді. Sprite-ке жасалған тағы бір маңызды қосымша – процестерді көшіру, ол бағдарламаларды кез келген уақытта машиналар арасында жылжытуға мүмкіндік береді. Жүйе машиналар мен олардың күйінің тізімін сақтайды және жергілікті өнімділікті жақсарту үшін процестерді автоматты түрде бос машиналарға көшіреді. Процестерді олардың өнімділігін арттыру үшін машиналардан "шығарып тастауға" болады, бұл бастапқы іске қосушыны желідегі басқа машинаға көшіруге немесе оны қайта жергілікті басқаруға мәжбүрлейді. Ұзақ тапсырмалар (мысалы, Sprite жүйесін құрастыру) өте жылдам орындалғандай көрінеді.
Early work on Sprite was based on the idea of making the operating system more "network aware", and thereby at the same time make it invisible to the user. The primary area of work was the building of a new network file system which made heavy use of local client side caching in order to improve performance. After opening the file and some initial reads, the network is only used on demand, and most user actions occur against the cache. Similar utilities allow remote devices to be mapped into the local computer's space, allowing for network printing and similar duties. Many of the key Unix files are based on the network, including things like the password file. All machines in a network share the root directory as well. Other common Unix utilities such as finger were re written to make them network aware as well, listing all of the people logged on across the network. This makes a Sprite network appear as if it were a single large time sharing system, or a single system image. Another key addition to Sprite is process migration, which allows programs to be moved between machines at any time. The system maintains a list of machines and their state, and automatically moves processes to idle machines to improve local performance. Processes can also be "evicted" from machines to improve their performance, causing the original starter to move it to another machine on the network, or take control of it locally again. Long tasks (like compiling the Sprite system) can appear very fast.
Дамыту
Жоғарыда сипатталған "алғашқы" Sprite бойынша жұмыс 1987 жылға қарай аяқталды, бірақ келесі жылы жақсартылды. 1990 жылдан бастап Sprite алғашқы журналдық құрылымдалған файлдық жүйенің (LFS) әзірленуіне негіз болды, оның әзірленуі шамамен 1992 жылға дейін жалғасты. LFS файлдарды жазу жылдамдығын оқу жылдамдығының есебінен күрт арттырады. Sprite жүйесінде бұл шарттасу әсіресе пайдалы, себебі көптеген оқу операциялары кэште сақталады – яғни, Sprite жүйелері әдетте қарапайым Unix жүйесінен аз оқиды. LFS сияқты жүйелер авариялық жағдайда деректерді қалпына келтіруді де жеңілдетеді, бұл осы кезеңде жобаның басты назарына айналды. 1994 жылға дейін әртүрлі машиналар мен дискілердің кластерлері бойынша жолақты файлдық жүйелермен қосымша тәжірибелер жүргізілді.
Work on the "early" Sprite outlined above ended around 1987, but was improved during the next year. Starting in 1990 Sprite was used as the basis for development of the first log structured file system (LFS), development of which continued until about 1992. LFS dramatically increases the performance of file writes at the expense of read performance. Under Sprite, this tradeoff is particularly useful because most read access is cached anyway—that is, Sprite systems typically perform fewer reads than a normal Unix system. LFS like systems also allow for much easier crash recovery, which became a major focus of the project during this period. Additional experimentation on striped file systems, both striped across different machines as well as clusters of drives, continued until about 1994.
Ұсынысты тоқтату
Sprite микроядролық жүйе емес еді және басқа Unix жүйелері сияқты дамыту күрделігі тұрғысынан ұқсас проблемаларға тап болды, себебі қызметтік мүмкіндіктер артқан сайын оны дамыту одан да қиынға соқты. 1990 жылдарға қарай ол қиын жағдайға түсті және жобаны қолдаған шағын команда осы кезеңде Unix-те болған қарқынды өзгерістерге ілесе алмады. Жоба 1994 жылға қарай біртіндеп тоқтатылды.
Sprite was not a microkernel system, and suffers the same sort of problems as other Unixes in terms of development complexity, becoming increasingly difficult to develop as more functionality was added. By the 1990s it was suffering and the small team supporting the project was simply not able to keep up with the rapid changes in Unix taking place during this time. The project was slowly shut down by 1994.