LINUX.ORG.RU

Компания Google открыла исходные тексты собственной реализации NX сервера

 , , ,


0

0

Разработчики из компании Google представили новый открытый проект - neatx, исходные тексты которого распространяются в рамках лицензии GPLv2. Neatx представляет собой независимую реализацию NX сервера, позволяющего организовать работу с удаленным десктопом через низкоскоростные линии связи, обеспечивая минимальную задержку и хороший уровень интерактивности. По сравнению с классическим протоколом X11, используемые в NX алгоритмы позволяют уменьшить объем трафика до 50 раз.

Код Neatx преимущественно написан на языке Python, для оптимизации производительности один из модулей реализован на Си. Частично в Neatx задействованы наработки из другого открытого проекта Google - системы для организации управления кластера виртуальных окружений Ganeti.

Проект Google выступает в роли альтернативы проприетарному продукту NoMachine NX server, а также свободному проекту FreeNX и основанных на нем продуктов x2go и 2X TerminalServer. Главный недостаток свободного проекта FreeNX в трудоемкости поддержки, так как код FreeNX представляет собой смесь блоков на BASH, Expect и Си.

В настоящий момент Neatx поддерживает создание, заморозку/разморозку и завершение сессий, совместим с сессиями Gnome и KDE, позволяет работать с виртуальными десктопами и плавающими окнами, поддерживает полноэкранный режим, имеет возможности по настройке параметров клавиатуры и разрешения экрана. Не реализована поддержка Windows/VNC сессий, невозможно принудительно завершить сессию из списка, отсутствуют средства передачи звука, туннелинга отправки на печать и проброса Samba разделов.

PS взято с OpenNet

>>> Подробности

★★

Проверено: Shaman007 ()
Ответ на: комментарий от yk4ever

> Ни разу не воспользовался "указателями". Что я делаю не так?

Не пользуете всех фич шарпея. Следовательно, "мертвые" свойства имеют место быть.

Однако, Закон Мерфи гласит "Если какая-нибудь неприятность может произойти, она случиться." (с)

> Наглая ложь. Жаба - многословное убоище. По лаконичности шарп её уделывает в разы, даже говорить не о чем.

Сплошные эмоции.

В Джаве нет ни out ref. Ни структур. Ни виртуально-невиртуально методов с оверайдингом. Ни конструкций вида protected internal static readonly verbosity field.

Зато в Джаве есть возможность работы с проверяемыми исключениями. Что явно не могут осилить фанаты шарпея.

Про "бритву Оккама" слышали?

> Це-шарп создавался как работа над ошибками жабы.

> Профессионально программирую на Це-шарп примерно полтора года.

Целых полтора года! LOL! Действительно "бальмерский набор":

"Developers, developers, developers!" (c). ROTFL:)))))

А я еще застал J++. Стало быть про WFC Вы-таки ничего и не слышали.

Так вот - шарпей - это лихорадочная попытка мелкософта вылезти на рынок enterpriZe серверов приложений. Потому как надавали им по рукам за попытку привязать свое поделие J++ под офтопик. Не вышло - вот и начали обходить сановские и бимерские патенты, создавая свой эклектичный язычоек - ни C++ и не Java, а Цэ-подобный Бэйсик.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>Про "бритву Оккама" слышали?

"Бритва Оккама" - тавтологическая ересь, призванная показаться умнее чем есть.

theos ★★★
()

Не хочу оскорбить когото но может пора завязывать с соплями :) Ато лор выглядить иногда как веб-клиника для фиксания покоцаной самооценки лузеров. здеся любой кодер/сысык с покоцаной самооценкой мож доказать шо он програмит на мега языке и поетому аутоматом несказанно крут :) рекомедуецо посещать после фиксания собственных багов или унылых мЫслей типа "етот язык А дАганяет мой супер язык Б" , особенно заметно в жаберов.

Хочецо иногда и нормальные посты почитать.

Када лор карму делать будет ? :))

anonymoses
()
Ответ на: комментарий от Bioreactor

> Не пользуете всех фич шарпея.

У меня есть более простое объяснение: вы дятел и не всосали, что указатели нужны только для тех редких случаев, когда подключаются внешние нативные библиотеки. Для прикладной разработки они не нужны.

> В Джаве нет ни out ref. Ни структур. Ни виртуально-невиртуально методов с оверайдингом. Ни конструкций вида protected internal static readonly verbosity field.

Всё говно какое-то вспоминаете. Проперти, делегаты/замыкания/лямбды, перегрузка операторов, экстеншн методы, свитчи по строкам, генерики по встроенным типам, yield-итераторы - вот где весь цимес.

> Зато в Джаве есть возможность работы с проверяемыми исключениями.

Что есть, то есть. Но, на мой взгляд, это переоценённая фича.

> Так вот - шарпей - это лихорадочная попытка мелкософта вылезти на рынок enterpriZe серверов приложений.

Who cares? Главное, что результат хорош и удобен.

yk4ever
()
Ответ на: комментарий от yk4ever

> У меня есть более простое объяснение:

1) Мелкое хамство? По существу есть что сказать.

Еще раз - CLI заточен под офтопик. JNI - универсальный и сравнительно безопасный интерфейс к внешним библиотекам. Безопасный так как вынесен из языка, исключая ключевое слово "native".

> вот где весь цимес.

2) А нужно ли это пользователю? Синтаксическая каша - потенциальный источник ошибки.

> Но, на мой взгляд, это переоценённая фича.

3) Я знаю мнение Хайльсберга по этому поводу. Знаю и ответ Гослинга.

> Главное, что результат хорош и удобен.

4) Результаты незначительны. По сравнению с JEE.

-------------------

www.dice.com

Java 8423

C# 4191

---------------

PS. Заметим, что в Америкосии начался выход из кризиса. Количество Джава за последний месяц вакансий выросло. Шарпеи просели. (Я-таки слежу за этой динамикой.)

Bioreactor ★★★★★
()
Ответ на: комментарий от theos

Тролололо? ПоциЭнт, Вам-таки надо на лечение к Проффессору В.С.Лугоффскому.

Он Вам уже расскажет про то, как он лечил бритвочкой Оккама к.т.н.Мамаева, торсиёнщиков, Наташу Половко от бокланопоцита.

И Вас вылечит.

------------------------

Выживают только ортогональные языки с небольшим числом сущностей. Кстати, по этим критериям Пайфон неплох (особенно, по сравнению с шарпеем). Однако, есть и другие критерии, исходя из которых Пайфон останется нишевым скриптовым язычком вместо tcl или Perl. Я уже говорил про то, почему Пайфон никогда не будет принят в enterpriZe.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

> А нужно ли это пользователю?

Нужно.

> Синтаксическая каша - потенциальный источник ошибки.

Неа. Где вы там нашли "кашу"? Это ж не перл.

> Результаты незначительны. По сравнению с JEE.

Вы называете 33%-ную долю "незначительной"? Бгг.

yk4ever
()
Ответ на: комментарий от Bioreactor

> Выживают только ортогональные языки с небольшим числом сущностей.

Бгг. Ознакомьтесь с C++.

yk4ever
()
Ответ на: комментарий от yk4ever

>> А нужно ли это пользователю?

> Нужно.

Отчего жа тогда пользователи выбирают Java?

>> Синтаксическая каша - потенциальный источник ошибки.

> Неа. Где вы там нашли "кашу"? Это ж не перл.

Еще раз - "Не следует множить сущее без необходимости" (с). В Java есть только самые необходимые сущности.

>> Результаты незначительны. По сравнению с JEE.

>Вы называете 33%-ную долю "незначительной"? Бгг.

Не знаю в каких таких "попугаях"(с) Вы-таки считали 33%, а реально доля незначительна. Корпоративщики выбирают UNIXы (включая zOS) и GNU/Linux, а не офтопик. Один IBM zSeries z10 бьет тысячу писючковых типа серверов.

Для бимерского zAAP никакой моны нет и не предвидится. Только Java. И точка.

>> Выживают только ортогональные языки с небольшим числом сущностей.

>Бгг. Ознакомьтесь с C++.

Мы о чем тут холиварим? О язычках системного программирования или язычках прикладных приложений? Ниже С++ только pure C и язык ассемблера.

C# горяздо ближе к недоязычку "автору которого место в дурке или на погосте" (с). Java слишком далека (и высокоуровнева) от C++, нежели шарпей.

ЗЫ. В качестве системного языка программирования я использую Objective-C 2.0. Так уж исторически сложилось.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>Тролололо? ПоциЭнт, Вам-таки надо на лечение к Проффессору В.С.Лугоффскому.

Всё ясно, вы тоже не знаете что эта "бритва Оккама" значит =/

theos ★★★
()
Ответ на: комментарий от Bioreactor

>"Не следует множить сущее без необходимости"

Ололо. Только вот на то, какие необходимы, а какие нет никто не даёт ответа. Так что такой ответ не лучше чем ответить "нужно хорошо приготовить" тому, кто спрашивает "Что делать, что бы мой суп был вкусный?" Очевидно и бесполезно.

theos ★★★
()
Ответ на: комментарий от theos

> какие нет никто не даёт ответа.

Я не кормлю троллей.

Профессор кормил, заставлял читать книжки К.Поппера.

Есть четкий критерий введения необходимых сущностей.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>Есть четкий критерий введения необходимых сущностей.

Универсальный для всех областей, дающий точный однозначный ответ? Ололо, такие "советы", обычно, не лучше той самой "бритвы Оккама"

theos ★★★
()
Ответ на: комментарий от Bioreactor

>Я не кормлю троллей.

Тогда нахрена говорить "бритва оккама"? тавтология "ненжные сущности ненужны" не добавляет вам аргументов.

theos ★★★
()
Ответ на: комментарий от Bioreactor

>теория была научно обоснованной

Теория описывает _модели_. Которые являются упрощениями, и достаточно сильными. Нету точной модели, которая бы говорила "так человек удобнее". Так что мимо.

theos ★★★
()
Ответ на: комментарий от Bioreactor

>Минуточку. Я спрашиваю про критерии научности или ненаучности.

Ну, я бы сказал, что проверка научности теории является возможность подтведить (прямо или косвенно) эксперементами.

Только при чём тут это?

theos ★★★
()
Ответ на: комментарий от theos

> Только при чём тут это?

При том, что практика - критерий истины. И обоснованность введения такой-то сущности (например, теплорода, тАрсиЁных полей, кварков, темной материи, бога-творца), или такого-то дополнительного свойства (например, рыбе зонтика или структур в шарпее) определяется практикой.

Но практическая верифицируемость - это только одно из условий научности или ненаучности обсуждаемого явления.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

Ну наверно, ещё нужна строгая, не проиворечивое выражение её на каком нибудь языке вроде математики, но это как бы по подразумевается.

И ещё раз, при чём тут это?

theos ★★★
()
Ответ на: комментарий от Bioreactor

>И обоснованность введения такой-то сущности (например, теплорода, тАрсиЁных полей, кварков, темной материи, бога-творца)

Ну наконец то. Ключево слово "такой-то сущности", когда говорим о _конкретных_ сущностях, и обсуждаем конкретную их ценность, всё правильно. Но когда говорим "ненужные сущности не нужны" - это ниочём.

theos ★★★
()
Ответ на: комментарий от theos

Нет, нужно еще и другое.

Иначе будет "спор остроконечников с тупоконечниками" (с). Типа "чем A лучше B? А тем, что А лучше B". Или наоборот.

Есть еще один критерий защиты против упертости. Против "холиваров ради холиваров".

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>Есть еще один критерий защиты против упертости. Против "холиваров ради холиваров".

Какой? Бритва Оккама - это тавтология.

theos ★★★
()
Ответ на: комментарий от theos

О чем, именно о чем.

Есть еще один критерий, кроме верифицируемости, позволяющей считать сущность (причем любую сущность) научно обоснованной или нет.

Нам это давали на философии. Еще при Совке (правда уже начиналась Перестройка). Неужели сейчас критерии не проходят?

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>Неужели сейчас критерии не проходят?

Нет. Расскажите нам. Только без тавтологий пожалуйста ;)

theos ★★★
()
Ответ на: комментарий от Bioreactor

> Отчего жа тогда пользователи выбирают Java?

Не знаю, я не выбираю :] Наверное, потому что жабо портировано на юниксы и имеет больше бублиотек. А как язык оно - хужее гораздо.

> Еще раз - "Не следует множить сущее без необходимости" (с). В Java есть только самые необходимые сущности.

Самые необходимые сущности есть в машине Тьюринга. А жабо - как раз нагромождение избыточных и оверкилльных конструкций. Для каждого делегата класс создавать, бгг. Каждый примитивный тип в генериках боксить, ололо.

> Java слишком далека (и высокоуровнева) от C++, нежели шарпей.

Вы эта. Докажите, чем Java выше уровнем, чем шарп. Тока сначала подучите матчасть немного, чтоб не бредить, как у вас с указателями было.

yk4ever
()
Ответ на: комментарий от theos

Для сущности должно быть методологическая возможность признать её неверной (бесполезной) путем постановки эксперимента (или в практическом использовании) даже если эксперимент еще не проведен (не проведена практическая эксплуатация).

То есть право на ошибочность заложено изначально.

А иначе упертость религиозного фанатика, будь то креационист-кретиноцианист или фанат питона, шарпея или даже Джавы.

Я всегда критично отношусь к тому или иному аспекту даже того, что лично мне нравится.

> Бритва Оккама - это тавтология.

Обоснуйте. Может быть получите премию от РАЕН.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

> Бритва Оккама - это тавтология.

Сначала, выберете пожалуйста формулировку, которая вам нравиться. А то их over 9000.

theos ★★★
()
Ответ на: комментарий от yk4ever

> потому что жабо портировано на юниксы и имеет больше бублиотек. А как язык оно - хужее гораздо.

Отчего же тогда такой хороший супер-пупер язык как C# не портирован и содержит гораздо меньше библиотек?

Масонский заговор или "Может, что-то в консерватории подправить?" (c)

Упертость - не критерий истины. См. мои посты выше.

Bioreactor ★★★★★
()
Ответ на: комментарий от theos

"Entia non sunt multiplicanda praeter necessitatem." (c) Guillelmus de Ockham

Мои скромные знания латыни позволяют перевести это как

"Сущности (Entia) не (non) надо (sunt) умножать (multiplicanda) более (praeter) необходимости (necessitatem)" (с) Уильям Оккам.

Что не так?

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>супер-пупер язык как C# не портирован

o_O Как раз язык C# портирован (насколько вообще можно говорить "портирован язык")

theos ★★★
()
Ответ на: комментарий от theos

Это означает, e.g., что если можно в граничных условиях задачи или класса задач не вводить такое понятие в язык программирования, как "структура", то её и не нужно вводить. А можно обойтись "классом".

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>в граничных условиях задачи

О. В каждой задаче по-разному. А язык то один

>что если можно


Что значит "можно"? А если при этом дико просядем по перформансу? Или вы про и loop unrolling скажем не знаете, и другие техники оптимизации?

theos ★★★
()
Ответ на: комментарий от theos

Это не единственное, что использует ентерпрайз. Но это то, из-за чего в ентерпрайз машины zSeries предпочитают писючкам с офтопиком.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

И что самое важное, Вы сразу скатываетесь на конкретные примеры. О чём я и говорю - дьявол в мелочах, интересны конкретны случаи. В общем вы ничего конкретоного не скажите.

theos ★★★
()
Ответ на: комментарий от theos

> А если при этом дико просядем по перформансу?

А это надо строго математически обосновать, что "просядем по перформансу".

Вот то, что "просядем по перформансу", используя офтопик и писючковые сервера вместо мейнфреймов, бимеры обосновывают. Проводят пилот-проекты и тому подобное. Но именно обосновывают для каждого конкретного случая.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>А это надо строго математически обосновать

При чём здесь математика. Строгая верификация практичесаки нигде не используется (да, знаю что иногда используется. но ооооооочень редко). Это как раз чисто практическа задача. С вознёй с профайлером. И, иногда, (например в комп. графике) такие структуры действительно нужны. Так вы что, все на свете случаи перебрали, и строго доказали что существует более простое и эффективное решение? Ах нет, тогда и не говорите, что "структуры не нужны".

theos ★★★
()
Ответ на: комментарий от theos

Пример работы моно или другой CLI реализации с шарпем на zSeries с поддержкой zAAP я хочу посмотреть.

А вот для Джавы.

"The IBM System z Application Assist Processors (zAAPs) is available on all IBM System z10, IBM System z9, IBM eServer zSeries 990 (z990) and IBM eServer zSeries 890 (z890) systems. The zAAP specialty engine provides an attractively priced execution environment for new web-based applications and SOA-based technologies, such as:

* Java™ - for customers who desire the powerful integration advantages and traditional Qualities of Service of the IBM mainframe platform." (c)

"The IBM System z Application Assist Processor (zAAP), previously known as the zSeries Application Assist Processor, is a mainframe processor introduced by IBM in 2004. zAAP engines[1] are dedicated to running specific Java and XML workloads under z/OS, accelerating performance. zAAPs are available for zSeries 990 and 890 servers and all System z9 and System z10 servers.

Currently a zAAP engine contains the same underlying hardware as any other mainframe engine. However, IBM uses microcode to limit code execution to Java and XML workloads only." (c)

Что Вы-таки про это имеете нам сказать?

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

> Отчего же тогда такой хороший супер-пупер язык как C# не портирован и

Ну это как раз MSонский заговор ;]

> и содержит гораздо меньше библиотек?

Стандартная библиотека содержит кучу всего. Вот сторонних несколько меньше, просто потому что язык моложе. Хотя, на самом деле, лично мне - хватает за глаза.

> Упертость - не критерий истины.

Это вы про себя? :D

yk4ever
()
Ответ на: комментарий от Bioreactor

>Уж, наверное, "компьютерную графику" будут пейсать на C, а не на шарпее.

Почему? Потомуже, почему раньше писали на асме, просто потому что привыкли, хотя на сях можно было написать не хуже? Ещё раз. C# - это эталон .NETа, как Java - эталон Java VM. Они полностью покрывают вирт. машину, они так созданы были. В .NET есть структуры, потому что задач бывают _разные_. И при это они не хотят кучу языков, в одном из которых есть структуры, а в другом нету. И их можно понять.

З.Ы. Вы так ничего не ответили по поводу бритвы.

theos ★★★
()
Ответ на: комментарий от yk4ever

То есть мелкософт сам себе роет могилу?

Я обосновываю. Привожу конкретные факты.

Перед такой мощью, как z10 c полутера терабайтами (!) оперативной памяти и 77 процессорами, да и еще Джава-копроцессорами такие пигмеи как Хайльсберг с клоунами типа Баллмера просто бессильны.

Сколько бы мелкомягкие своими лулзами ни развлекали бы публику - все равно всерьез их в серьезных приложениях считают за клоунов:

http://www.youtube.com/watch?v=8To-6VIJZRE

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>Пример работы моно или другой CLI реализации с шарпем на zSeries с поддержкой zAAP я хочу посмотреть.

А почему именно на zSeries? Если посмотреть, есть дофига сайтов на винде с .NETом. И совсем мало (если есть) на моно. Почему микрософт не портирует .NET понятно, и тех вопросы тут не при чём. Почему mono почти не используется в продакшне тоже понятно.

theos ★★★
()
Ответ на: комментарий от theos

> потому что задач бывают _разные_.

Вот то-то и дело, что разные. И никто мелкомягких в ентерпрайз не возьмет с их убожеством для студентов, орущих: "Developers! Developers! Developers!" (c).

Потому как умножать сущности никто из отвечающих своим благосостоянием из энтерпрайз CEO не будет. zSeries - и точка.

Bioreactor ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.