LINUX.ORG.RU
ФорумTalks

Почему Линукс устарел?

 


0

0

Начнем с самого святого — ядра. Оно монолитное, этим все сказано. Для встраиваемой техники это, безусловно, может быть полезным, но для ПК это выливается в отсутствие гибкости и стабильности. Если в монолитном ядре произойдет сбой — конец. Ядра же с современными архитектурами умеют просто выгрузить сбойный модуль и спокойно продолжить работу.

Далее, в чисто монолитном ядре не предусмотрена подгрузка и выгрузка модулей, что вынуждает перекомпилировать его каждый раз при изменении состава оборудования, откуда и растет мем «конпеляция ведра». Естественно, это не удобно, и разработчики Линукса пошли на шаг, превративший ядро в полный НЁХ: они с помощью костылей добавили подобный функционал. Что вышло? Мы имеем все преимущества и недостатки модульной архитектуры одновременно с недостатками монолитной. А почему у монолита не осталось преимуществ? Они все были нивелированы переходом к модульности. И все равно, как ни странно, все сходятся во мнении, что ядро Линукса по прежнему монолитное со всеми его «достоинствами».

Вторая часть проблемы, создаваемой монолитом — сложность. Сам Торвальдс уже говорит, всё настолько плохо, что для исправления бага в ядре приходится искать человека, разбирающегося в соответствующей части. И зачастую это тот человек, что её писал. А некоторые личности в обсуждении успешно «осваивают» ядро.

Безусловно, после этих слов им можно верить. А ведь Эндрю Таненбаум предупреждал Торвальдса, что ОС с монолитной архитектурой ядра будет гигантским скачком в прошлый век. Едем дальше. Что у нас? О, это же концепции UNIX, положенные в основы Линукса. Ни у кого после этого не повернется язык сказать, что ЛИнукс — современная ОС.

Убогий «всё есть файл», когда придумали более совершенный «всё есть объект»,текстовый ввод-вывод(понимаете, какой это ****?),настройка ОС текстовыми файлами и упор на консольные приложения.

О последнем подробнее. Множество линуксоидов считают консоль удобным интерфейсом(ага, в 21 веке то), но основные приводимые доводы оказываются надуманными от невозможности это доказать не на чувственном уровне. Основные причины любви стоит выделить две: 1)Консоль — главная часть хакерского стереотипа, а поскольку хакером сегодня быть круто и модно, то на бессознательном уровне вырабатывается любовь к черному окну, зелененьким буковкам и непонятным для непосвященных действиям. 2) Мнение, что если разработчики делают консольных программ больше, чем графических, то это круто и должно быть удобно, вот не знаю, но ведь это всё не зря… По правде, это сказывается неоднородность самого Линукса. Пользователю, может, удобно иметь кучу нескучных обоин и DE, но для разработчика просто ад делать свою программу одновременно рабочей для KDE, GNOME и прочих сред. Поэтому он выбирает то, что работает во всех Линуксах одинаково — консоль. Вот и весь секрет: разрабатывать консольные приложения удобно, но это не значит, что их удобно использовать. А всё остальное высосано из пальца. Иксы. Старая вещь, появившаяся еще до рождения Линукса. Гордость каждого линуксоида. И это притом, что их сейчас мечтают заменить чем-то менее прогнившим и более быстрым, но все никак не могут. Вообще, об этом звере из деревянных шестеренок на костылево-скипидарном приводе стоит писать отдельную статью. Пользователи последней убунты сами могут почувствовать, насколько быстрые иксы, запустив htop и поседев от ужаса, наблюдая за показателями ЦП в полном бездействии. Может, вам пофиг, а если у меня ноутбук? Жалко батарейку.

Снова едем дальше. Вы никогда не думали, почему пользоваетей Линукса так мало и почему они с ужасом оббегают Линукс стороной? А потому что не всех устраивает качество и количество софта на него. А почему? А потому что разработчики с ужасом оббегают Линукс стороной. А почему? Вот мы и подошли к главному. Нет, проблемы, описанные выше играют свою роль, но есть что-то по мощнее. Скажите, удобно ли разработчику поддерживать свой продукт для 300+ несовместимых дистрибутивов? А еще на каждом может быть по 10 вариаций DE, получая уже 300*10. А разные наборы разных версий библиотек? Dependency hell? Тоже. Последнее вообще стало отдельным мемом

Отсюда приходим к дальнейшим проблемам: Линукс не только устаревает, но еще и отстает. Хороший пример — недавнее добавление поддержки PCI-E 2.0, в 2012 году,когда все нормальные люди пользовались этим уже в 2008. А ведь во всю бушует PCI-E 3.0 и анонсирован 4.0. Правильно, зачем нам скорость в 16 GT/s, когда есть 5 GT/s? И такое повсюду: когда у всех что-то считается устаревшим, в Линуксе оно только появляется. Никому не хочется писать нормальный софт, потому что и писать то нормально не выйдет, что уж там работать ему, в итоге это ложится на плечи самым упоротым энтузиастам.

★★★

Последнее исправление: hakavlad (всего исправлений: 2)

Ну слишком жирно, ведь этому баяну лет 8 как минимум

ss_ash ★★★
()

текстовый ввод-вывод(понимаете, какой это ****?),настройка ОС текстовыми файлами и упор на консольные приложения.

Это ты ещё индустриальный стандарт обмена сообщениями между софтом не видел:
https://en.wikipedia.org/wiki/SOAP
Для не знакомых Ъ: любой объект сериализируется в XML, зипуется и отправляется по HTTP. И да, это IPC, один из самых молодых.

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 1)

Для встраиваемой техники это, безусловно, может быть полезным, но для ПК это выливается в отсутствие гибкости и стабильности. Если в монолитном ядре произойдет сбой — конец

Ну вообще-то там, где нужна безопасность и надежность работы используют L4 и seL4, а не дырявый монолитный Linux или какой-либо другой монолит ОС

Commercial deployment

In November 2005, NICTA announced[11] that Qualcomm was deploying NICTA’s L4 version on their Mobile Station Modem chipsets. This led to the use of L4 in mobile phone handsets on sale from late 2006. In August 2006, ERTOS leader and UNSW professor Gernot Heiser spun out a company named Open Kernel Labs (OK Labs) to support commercial L4 users and further develop L4 for commercial use under the brand name OKL4, in close collaboration with NICTA. OKL4 Version 2.1, released in April 2008, was the first generally available version of L4 which featured capability-based security. OKL4 3.0, released in October 2008, was the last open-source version of OKL4. More recent versions are closed source and based on a rewrite to support a native hypervisor variant named the OKL4 Microvisor. OK Labs also distributed a paravirtualized Linux named OK:Linux, a descendant of Wombat, and paravirtualized versions of SymbianOS and Android. OK Labs also acquired the rights to seL4 from NICTA.

OKL4 shipments exceeded 1.5 billion in early 2012,[2] mostly on Qualcomm wireless modem chips. Other deployments include automotive infotainment systems.[12]

Apple A series processors beginning with the A7 contain a Secure Enclave coprocessor running an L4 operating system[13] based on the L4-embedded kernel developed at NICTA in 2006.[14] This implies that L4 is now shipping on all iOS devices, the total shipment of which is estimated at 310 million for the year 2015.[15]

https://en.wikipedia.org/wiki/L4_microkernel_family#High_assurance:_seL4

И есть хорошее исследование по сравнению монолитных и микроядерных ОС

The Jury Is In: Monolithic OS Design Is Flawed. Microkernel-based Designs Improve Security

https://ts.data61.csiro.au/publications/csiro_full_text/Biggs_LH_18.pdf

linuxoidspb
()
Последнее исправление: linuxoidspb (всего исправлений: 4)

Убогий «всё есть файл», когда придумали более совершенный «всё есть объект»,

Этот самый ‘всё есть объект’ я имел возможность наблюдать во все поля в as/400 Нахер-нахер это лютое пропиетарное гомно.

текстовый ввод-вывод(понимаете, какой это ****?),настройка ОС текстовыми файлами и упор на консольные приложения.

Да, неграмотным с этим тяжело, согласен.

hungry_ewok
()

Убогий «всё есть файл», когда придумали более совершенный «всё есть объект»,текстовый ввод-вывод(понимаете, какой это ****?),настройка ОС текстовыми файлами и упор на консольные приложения.

В лялексе не всё файл. Скорее, всё FD. Что удобно программировать на C, но не более.

Всё файл в Plan9. Даже оконный интерфейс.

hateyoufeel ★★★★★
()

разрешаю не пользоваться линуксом

kott ★★★★★
()

Лучше бы ты на проблемах,вытекающих из монолитности внимание заострил, вот там есть, что пообсуждать.

убогий «всё есть файл», когда придумали более совершенный «всё есть объект»

Неправда, как раз концепция «все есть объект» намного более убога.

текстовый ввод-вывод (понимаете, какой это ****?)

Нет, не понимаем, какой же он должен быть, пиктограммным?

Настройка ОС текстовыми файлами и упор на консольные приложения программы?

И? Это вообще-то положительные стороны. Текстовые конфиги удобно править, про упор на консоль ты перебарщиваешь. Во-первых, ко всем мало-мальски популярным инструментам есть или gui-фронтэнд или просто графический аналог. Во-вторых, что за бред ты про DE-зависимость нес? Любая программа на qt или gtk запуститься в любом линуксе, достаточно чтобы стояли сами qt/gtk, а это можно сказать обязательное приложение к xorg, которое почти везде по дефолту и так стоит.

Dog ★★★
()

Не соглашусь по поводу консоли с чёрным экраном. В том же Microsoft Windows их аж две. Консоль – классический способ взаимодействия с машиной, в некоторых аспектах (но не во всех!!) быстрее и удобнее GUI.

А так по многим пунктам действительно печальная правда.

EXL ★★★★★
()

О последнем подробнее. Множество линуксоидов считают консоль удобным интерфейсом(ага, в 21 веке то), но основные приводимые доводы оказываются надуманными от невозможности это доказать не на чувственном уровне. Основные причины любви стоит выделить две: 1)Консоль — главная часть хакерского стереотипа, а поскольку хакером сегодня быть круто и модно, то на бессознательном уровне вырабатывается любовь к черному окну, зелененьким буковкам и непонятным для непосвященных действиям. 2) Мнение, что если разработчики делают консольных программ больше, чем графических, то это круто и должно быть удобно, вот не знаю, но ведь это всё не зря…

Бред какой. В остальное даже вчитываться не стал. Слишком толстый наброс.

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

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

А что еще тебе нужно сделать? А ну-ка изобрази мне на двух параметрах аналог:

alias sgrep='grep --color=auto -r -n --exclude-dir=.svn --exclude-dir=.git --exclude-dir=.deps --exclude='\''*.[oa]'\'' --exclude='\''*.so'\'' --exclude='\''*.xz'\'' --exclude-dir=autom4te.cache --exclude=aclocal.m4 --exclude=config.sub --exclude=ltmain.sh --exclude=.intltool-merge-cache'
wandrien ★★
()
Наглядно-действенное мышление — форма мышления, манипулирующая предметной сферой. Имеется у детей с рождения до 1,5 лет.
Конкретно-предметное мышление — задачи решаются с помощью существующего, реального объекта. Формирование в возрасте от 1,5 до 7 лет.
Абстрактно-логическое мышление — мышление абстракциями — категориями, которых нет в природе. Формируется с 7 лет.

Кто во взаимодействии с компьютером не дорос до абстрактно-логического мышления, тем, конечно, консоль неудобна. Но всё-таки у людей обычно развита РЕЧЬ.

wandrien ★★
()

Вторая часть проблемы, создаваемой монолитом — сложность.

С микроядром сложность никуда не денется, просто уйдёт на другой уровень.

Убогий «всё есть файл», когда придумали более совершенный «всё есть объект»

Объект, это, извините, что?

текстовый ввод-вывод(понимаете, какой это ****?)

Аргумент к эмоциям. Мы на техническом форуме, а не бабском.

Основные причины любви стоит выделить две:

И обе - тупое говно, которые сам ТС придумал и разоблачил.

Вот и весь секрет: разрабатывать консольные приложения удобно, но это не значит, что их удобно использовать.

Кому использовать? Для чего использовать? CLI приложение - это некая функция, которую можно вызвать руками, в скрипте, из этого твоего гуя...

Скажите, удобно ли разработчику поддерживать свой продукт для 300+ несовместимых дистрибутивов?

Из которых мейнстримных всего три, 2 тулкита + 2 де, на них основных, а остальное - форки с 3.5 юзерами и форки форков. Но нет, дурак-тс опять ретранслирует херню.

Хороший пример — недавнее добавление поддержки
2012

Такое-то недавнее.

Я за бан по iq. Критика нужна, и кое-что верно, но в целом - очередной тупой высер.

ТС, ты, вроде, не похож на идиота. Как это всё понимать?

crutch_master ★★★★★
()
Последнее исправление: crutch_master (всего исправлений: 3)
Ответ на: комментарий от linuxoidspb

Ну вообще-то там, где нужна безопасность и надежность работы используют L4 и seL4, а не дырявый монолитный Linux или какой-либо другой монолит ОС

Кстати, напомню что есть случаи, когда поверх L4 запускается Linux, видимо как микросервис.

https://ru.wikipedia.org/wiki/L4Linux

А уже поверх Linux привычные приложения.

И подобное вполне было коммерческим решением, например, вот этот вот телефон работал на L4 + L4Linux: Motorola Evoke QA4.

Это видно по исходному коду, который опубликовала Motorola: https://sourceforge.net/projects/slide-alpha.motorola/files/qa4/R6639%20G%2081.21.06R/linux_standalone-2.6.20.tgz/download

EXL ★★★★★
()

Начнем с самого святого — ядра. Оно монолитное, этим все сказано.

Что-то Windows NT это не помогает. Я почти за 20 лет один раз видел kernel panic, и то из за битой ОЗУ. А Windows NT на каждый чих ложится в синий экран.

Дальше читать не стал.

unixnik ★★★★★
()
Последнее исправление: unixnik (всего исправлений: 1)
Ответ на: комментарий от Dog

Нет, не понимаем, какой же он должен быть, пиктограммным?

Он должен быть во вменяемом текстовом формате, чтобы легко поддаваться парсингу и выдёргиванию необходимой информации без обмазывания костыльным sed/awk калом и регулярками, «магия» которых рассыпается с каждым обновлением утилиты.

Но поскольку стандартизация в мире Linux традиционно сосёт, у каждого консольного приложения свой формат выхлопа и к каждому приложению нужно писать портянку, чтобы распарсить его дрист и вычленить только нужное.

Подход «всё есть объект» на корню бы зарубил плохоработающие sed/awk-костыли.

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

не обозначенной в пасте.

Зубной или томатной?

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

Кстати, напомню что есть случаи, когда поверх L4 запускается Linux, видимо как микросервис.

Это все костыли, кому нужно как-то обезопасить работу Linux-a и соответственно использовать приложения и всё, что можно запустить на Linux Есть еще https://muen.sk/

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

Но поскольку стандартизация в мире Linux традиционно сосёт, у каждого консольного приложения свой формат выхлопа и к каждому приложению нужно писать портянку, чтобы распарсить его дрист и вычленить только нужное.

Допустим, стандартизация в мире Linux традиционно сосёт. Скажи, а Гному что мешало сделать свою внутреннюю стандартизацию, когда они вкатили gconf, а потом выкинули его?

Зеленые человечки?

Он должен быть во вменяемом текстовом формате, чтобы легко поддаваться парсингу

JSON

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

Что-то Windows NT это не помогает. Я почти за 20 лет один раз видел kernel panic, и то из за битой ОЗУ. А Windows NT на каждый чих ложится в синий экран.

20 лет заставляют сидеть на Windows NT 4.0?

Моргни два раза, если тебя удерживают силой.

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

Ну вообще-то там, где нужна безопасность и надежность работы используют L4 и seL4

а в марсоходах - VxWorks.

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

Это все костыли, кому нужно как-то обезопасить работу Linux-a и соответственно использовать приложения и всё, что можно запустить на Linux

Да, просто удивило что это попало в комерческий продукт предназначенный для конечных пользователей, вместо решения просто запустить Linux на железке.

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

Клоунов подвезли или ты зумер? Я за это время большую часть времени использовал Linux чем Windows, и на Windows синий экран встречал столько что я не могу сосчитать. На том же оборудовании дистрибутивы Linux работают отлично. Или что, Microsoft отказалась от Windows NT? Переписала его в монолитное?

unixnik ★★★★★
()
Последнее исправление: unixnik (всего исправлений: 1)
Ответ на: комментарий от unixnik

Windows NT — это конкретный продукт, которому четверть века. О чем ты, зумеры тебя даже не поймут. :)

Windows синий экран встречал столько что я не могу сосчитать

Ядерных сбоев не видел со времен XP. Вот под ней часто было. Хотя нет, вру. На рабочем компьютере бывшей жены стояла семерка, там был сбойный драйвер на каком-то оборудовании.

Чаще что-то другое, например, невозможность корень смонтировать. Я думаю, в лине тоже случалось наблюдать «Kernel panic - not syncing: VFS: Unable to mount…»

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

В следующий раз обязательно поставлю табличку SARCASM.

Стоило бы, а то ЯННП.

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

Скажи, а Гному что мешало сделать свою внутреннюю стандартизацию, когда они вкатили gconf, а потом выкинули его?

Откуда же мне знать и понимать логику разработчиков GNOME? Впрочем, нельзя не заметить, что подход с «реестром» получился действительно удобным. Особенно на юзкейсах вроде «настроить систему скриптом после установки» это становится очевидным. Если в случае с GNOME я могу сделать что-то вроде:

gsettings set com.canonical.indicator.session show-real-name-on-panel false
dconf write /org/gnome/gnome-session/auto-save-session true

То в KDE по UNIX-заветам «пользуйтесь текстовыми файлами» я должен идти и пердолить sed/awk-скрипты на INI-файлах, которые отвалятся сразу после незначительного обновления.

JSON

Да вообще хоть что-нибудь. В начале нулевых это могло быть тем же XML, а сейчас хоть тем же YAML. Любой способ можно было бы заюзать.

К слову, разработчики FreeBSD в отличие от разработчиков дистрибутивов Linux проблемой этой озадачились и прикрепили к некоторым консольным утилитам такую возможность: https://wiki.freebsd.org/LibXo

Первый шаг для выпинывания sed/awk-костылей сделан. Вот только делать его надо было ещё в начале нулевых, а в идеале вообще при проектировании UNIX.

EXL ★★★★★
()
Последнее исправление: EXL (всего исправлений: 2)
Ответ на: комментарий от EXL

Если в случае с GNOME я могу сделать что-то вроде:

И как с этими костылями запустить копию приложения с отдельным конфигом?

Первый шаг для выпинывания sed/awk-костылей сделан. Вот только делать его надо было ещё в начале нулевых

В начале нулевых были tcl, perl, python, ruby… еще лиспов куча…

Вот только обвязку до сих пор пишут на sh.

Тут впору не заниматься бездумной критикой sh и sed, а задуматься, что же в них есть такого, что до сих пор их эксплуатация актуальна. И как это что-то повторить на другой технологической базе.

wandrien ★★
()

Расскажи как ты в убунту именно иксы определил не быстрыми?

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

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

а тут и думать не надо, sed/awk - инструменты, позволяющие заставить скрипт сделать с файлами то, чтобы делал разработчик руками с минимальным порогом вхождения. Потому что да, всегда будет зоопарк софта и конфигов, потому что завтра Вася-самоделкин напишет свою очень нужную тебе утилиту, и тебе будет нужна ее функциональность, а не чтобы Вася делал все по HIGу, придумывал какой-то реестр с объектами и еще что-то. С такими требованиями Вася всех нах пошлет. Но нет, у нас тут есть свидетели секты ынтырпрайза, чо бы им только на винфаке не проследовать

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

И как с этими костылями запустить копию приложения с отдельным конфигом?

Так механизм для этого был бы точно такой же, как и для файлов. Сделать копию «куста» с /org/gnome/app => /org/gnome/app_my_conf, запуститься с ней: app --dconf-root=app_my_conf, фича просто не настолько востребована, чтобы её часто использовали. Более того, куча KDE-шных приложений, которые имеют текстовый INI-конфиг, не имеют параметра для переопределения этого текстового конфига в другом месте ФС, отличным от $HOME. Так что придётся теребонькать файлики туда-сюда.

Вот только обвязку до сих пор пишут на sh/sed/awk.

И причина тому далеко не удобство sh/sed/awk в использовании, а наркомания нестандартизированного выхлопа консольных утилит.

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

И причина тому далеко не удобство sh/sed/awk в использовании, а наркомания нестандартизированного выхлопа консольных утилит.

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

А если нужно пропарсить выхлоп прикладной утилиты в «нестандартизированном формате», то делать это на регулярках в рамках полнофункционального ЯП намного приятнее, чем на sed.

Однако… дальше что-то идет не по этому плану.

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

Более того, куча KDE-шных приложений, которые имеют текстовый INI-конфиг, не имеют параметра для переопределения этого текстового конфига в другом месте ФС, отличным от $HOME.

К — качество.

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

Достаточно было обеспечить стандартизацию выхлопа в системных утилитах, которые охватывают максимальное количество дистрибутивов, предоставить системные средства и API для формирования выхлопа и разработчики сторонних прикладных утилит сами бы с превеликим удовольствием начали бы этим пользоваться, а для тех кто не начал sed/awk никто и не убирает.

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

Что-то Windows NT это не помогает. Я почти за 20 лет один раз видел kernel panic, и то из за битой ОЗУ. А Windows NT на каждый чих ложится в синий экран.

Не видел синих экранов на Windows 10. Ты наверное попутал с ReactOS. Или писал свои драйвера как дятел, которые и ложили Windows 10.

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

Имхо, нужно написать новые утилиты. С новыми названиями. Пропихнуть в старые — конструктивно неправильно.

Но я немного не об этом. Скриптовые ЯП позволяют вообще не писать никаких утилит такого рода, так как это всё просто часть стандартной библиотеки.

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

Очень однобокая статья, кстати. Даже твоя паста в стартовом посте выглядит более адекватной.

Лозунг «ZFS на FreeBSD лудши и продакшон-риди, в отличие от Linux где постоянно ошыбки в ZFS», который повторили несколько раз смотрится особенно забавно на фоне переезда FreeBSD на кодовую базу ZFS on Linux.

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

Подход «всё есть объект» на корню

Что такое «объект»? Структура? Экземпляр класса ООП? Изменение структуры выхлопа в новой версии не рассыпет твои костыли, расставленные вокруг?

Он должен быть во вменяемом текстовом формате, чтобы легко поддаваться парсингу и выдёргиванию необходимой информации без обмазывания костыльным sed/awk калом и регулярками

Каким их нужно обмазывать калом? xml/json/yaml? Если тебе выдадут какую-нибудь поехавшею вложенную структуру, то у меня тоже плохие новости.

crutch_master ★★★★★
()

да что, чёрт побери, ты такое несёшь?

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

Да вообще хоть что-нибудь.

Так пожалуйста. Делаешь пакет, который будет заварачивать выхлоп системных утилит в json, мейнтейнишь, делаешь алиасы, ..., profit! Но почему никто этого еще не сделал?? В чём же подвох?

crutch_master ★★★★★
()
Последнее исправление: crutch_master (всего исправлений: 1)
Ответ на: комментарий от Eddy_Em

Пожалуй, тоже добавлю ТС в игнор. Троллинг – это хорошо, но не настолько ж тупорылый… Текстовый ввод-вывод ему помешал, гы… Б@#, чёт ржу. :))) Уж в венде-то stdin/out небось не текстовый!

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