Обзор свободной ОС Plan 9: программирование
Содержание:
1. Пользовательский интерфейс;
2. Прикладные программы;
3.Программирование (Вы читаете данный раздел);
4. Выводы.
Основным языком программирования, который используется в операционной системе Plan 9, является модификация языка ANSI C. От стандартного C он отличается полной поддержкой Unicode и ряда других полезных расширений, таких как формирование структур и инициализация массивов.
Кроме собственного варианта компилятора C, дистрибутив Plan 9 включает полный набор стандартных библиотек. Вероятно, самым большим несоответствием стандарту ANSI С в компиляторе Plan 9 является его препроцессор, функциональность которого сильно урезана. В Plan 9 реализована кроссплатформенная компиляция и отладка.
На Plan 9 успешно портированы компиляторы и интерпретаторы Perl, Python, Haskell, Scheme, Newsqueak, ML и Go. Существует также компилятор «родного» для Plan 9 языка высокого уровня Alef. Он не нашел широкого применения, но со временем дал начало языкам Limbo и Go. Интегрированных сред разработки как таковых не существует, а для редактирования исходных кодов используется все тот-же редактор Acme.
Концепция «все есть файл» существенно упрощает операционную систему и позволяет сделать процесс прикладного программирования приложений более простым и универсальным. Plan 9 не делает различий между локальными и удаленными ресурсами, избавляя программиста от необходимости писать дополнительный код, ответственный за сетевые взаимодействия. Все, что должна уметь программа - это записывать и читать файлы, а также производить проверки возвращаемых значений. При этом в распоряжении программиста находится множество специальных библиотек, служащих удобными оболочками для файловых серверов.
Интерфейс прикладного программирования (API) в Plan 9 включает совсем небольшой набор системных вызовов ядра. Все остальные функции представлены различными файлами, экспортируемыми файловыми серверами. С большинством этих файлов можно работать безо всяких дополнительных оболочек, через прямой вызов стандартных функций open, close, read, write и seek. Это делает API простым и легким для запоминания и использования. Такой файловый интерфейс можно использовать из любого языка программирования без необходимости написания дополнительного связующего кода.
Отдельное внимание заслуживает и тот факт, что Plan 9 не делает различия между процессами и нитями.
Системный вызов rfork, предназначенный для разветвления процесса, принимает аргумент, используя который программист может указать, какие из ресурсов родительского процесса будут общими для обоих процессов, какие будут созданы заново, а какие скопированы из родителя. Он позволяет полностью управлять поведением процесса-потомка, который может стать и легковесной нитью, разделяющей практически все ресурсы с родителем, и полноценным процессом, набор ресурсов которого обособлен.
Системный вызов rendezvous обеспечивает синхронизацию процессов. Он позволяет реализовать различные виды блокировок, механизмы перевода в состояние ожидания и коммуникационные каналы.
Гораздо больше чем обзор свободной ОС Plan 9, с которой Вы никогда в жизни не будете иметь дела, Вас интересует аренда автомобилей в москве без водителя (http://prostoprokat.ru/pabv.html) по низким ценам? Что ж, тогда Вы просто обязаны посетить сайт prostoprokat.ru. Только здесь Вы сможете арендовать отличный автомобиль на максимально выгодных для себя условиях!
1. Пользовательский интерфейс;
2. Прикладные программы;
3.
4. Выводы.
Основным языком программирования, который используется в операционной системе Plan 9, является модификация языка ANSI C. От стандартного C он отличается полной поддержкой Unicode и ряда других полезных расширений, таких как формирование структур и инициализация массивов.
Кроме собственного варианта компилятора C, дистрибутив Plan 9 включает полный набор стандартных библиотек. Вероятно, самым большим несоответствием стандарту ANSI С в компиляторе Plan 9 является его препроцессор, функциональность которого сильно урезана. В Plan 9 реализована кроссплатформенная компиляция и отладка.
На Plan 9 успешно портированы компиляторы и интерпретаторы Perl, Python, Haskell, Scheme, Newsqueak, ML и Go. Существует также компилятор «родного» для Plan 9 языка высокого уровня Alef. Он не нашел широкого применения, но со временем дал начало языкам Limbo и Go. Интегрированных сред разработки как таковых не существует, а для редактирования исходных кодов используется все тот-же редактор Acme.
Концепция «все есть файл» существенно упрощает операционную систему и позволяет сделать процесс прикладного программирования приложений более простым и универсальным. Plan 9 не делает различий между локальными и удаленными ресурсами, избавляя программиста от необходимости писать дополнительный код, ответственный за сетевые взаимодействия. Все, что должна уметь программа - это записывать и читать файлы, а также производить проверки возвращаемых значений. При этом в распоряжении программиста находится множество специальных библиотек, служащих удобными оболочками для файловых серверов.
Интерфейс прикладного программирования (API) в Plan 9 включает совсем небольшой набор системных вызовов ядра. Все остальные функции представлены различными файлами, экспортируемыми файловыми серверами. С большинством этих файлов можно работать безо всяких дополнительных оболочек, через прямой вызов стандартных функций open, close, read, write и seek. Это делает API простым и легким для запоминания и использования. Такой файловый интерфейс можно использовать из любого языка программирования без необходимости написания дополнительного связующего кода.
Отдельное внимание заслуживает и тот факт, что Plan 9 не делает различия между процессами и нитями.
Системный вызов rfork, предназначенный для разветвления процесса, принимает аргумент, используя который программист может указать, какие из ресурсов родительского процесса будут общими для обоих процессов, какие будут созданы заново, а какие скопированы из родителя. Он позволяет полностью управлять поведением процесса-потомка, который может стать и легковесной нитью, разделяющей практически все ресурсы с родителем, и полноценным процессом, набор ресурсов которого обособлен.
Системный вызов rendezvous обеспечивает синхронизацию процессов. Он позволяет реализовать различные виды блокировок, механизмы перевода в состояние ожидания и коммуникационные каналы.
Гораздо больше чем обзор свободной ОС Plan 9, с которой Вы никогда в жизни не будете иметь дела, Вас интересует аренда автомобилей в москве без водителя (http://prostoprokat.ru/pabv.html) по низким ценам? Что ж, тогда Вы просто обязаны посетить сайт prostoprokat.ru. Только здесь Вы сможете арендовать отличный автомобиль на максимально выгодных для себя условиях!