LINUX.ORG.RU

Избранные сообщения pacify

dymal zadachu pridumat, pridumal chatik. (ц)

 ,

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

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

все было довольно скучно, во $ who 15 человек сидят, смотришь $ ps aux, а там у кого-то vim открыт, кто-то брутфорсит пароли... серо и уныло. пока я (да, я первонах :) не выполнил $ wall test и тут понеслась... все сразу дали о себе знать! вконтакте тоже стало живенько.

пока мы игрались в мамкиных хакеров, переписываясь в консоли через wall, к нам подключилась администрация FirstVDS.

[user21@sysadmin ~]$
Broadcast message from root@sysadmin (pts/5) (Fri Jul 29 16:06:26 2016):

blin, dymal zadachu pridumat, pridumal chatik. Kak v starye-dobrie...

в итоге мы просто саботировали их конкурс. совместными усилиями, нашли все коды, всей толпой отправили им решение и теперь не знаем, как поступят FirstVDS. наверное, конкурс отменят. иначе придётся раскошеливаться на призах. =)

но это было чертовски весело! выполнять MMO-Quest непосредственно связанный с линуксом всей, как её называют, «гильдией» :) тем более что вопросы были простые, у Ъ-линуксоида (а не дуалбутчика-виндузятника) с опытом в ~пол года уже не возникнет никаких трудностей в решении этих задачек.

просто делюсь впечатлениями, давно так небыло весело.

ответы, конечно, выкладывать не буду, но если у кого возникнут вопросы, связанные с конкурсом — отвечу и помогу с решением.

ЗЫ. всем привет от user21.

Spoofing
()

Ситуация с архиваторами в Линуксе и вообще

 ,

О наболевшем, казалось бы где-где, а в самой популярной Unix-системе с этим должен быть порядок, но что мы имеем на сегодняшний день.

  • zip — отдельная компрессия каждого файла, вследствие чего размер архива неприлично большой;
  • tar.gz — ограничение на длину файла в 100 (!) символов, отсутствие директории содержимого, как результат невозможно просмотреть содержимое архива без его распаковки;
  • 7z — не сохраняет права на файлы;
  • rar — проприетарщина, насколько понимаю также не сохраняет права.

Поправьте если я в чём-то ошибаюсь. Существует ли в принципе популярный архиватор без вышеуказанных проблем, которым пользуется не только его автор?

Dendy
()

Британец построил огромный компьютер из дискретных транзисторов

 ,

Житель британского Кембриджа Джеймс Ньюмэн создал компьютер из отдельных элементов размерами 10 на 2 метра, который получил название Megaprocessor.

Ньюмэн приступил к созданию Megaprocessor ещё в 2012 году, однако закончил работу над ним лишь в июне этого года. На весь проект он потратил 40 000 фунтов. Машина включает 8-битные цепи длиной в 30 см, 40 000 транзисторов и 10 000 светодиодов, а масса конструкции равна примерно полтонны.

Но для чего Ньюмэн сделал этот компьютер? Сам инженер сказал: «Потому что мне хотелось». Джеймс работает инженером по цифровой электронике, который изучал работу транзисторов, и он захотел визуализировать работу микропроцессора.

«Компьютеры весьма непрозрачны, смотря на них невозможно увидеть, как они работают. Что я захотел сделать, так это залезть во внутрь и увидеть, что там происходит. Проблема в том, что мы не можем уменьшиться настолько, чтобы пройтись по кремниевому чипу. Но мы можем пойти другим путём. Мы можем построить его настолько большим, чтобы пройти по нему. И не только это, мы можем разместить светодиоды на всём, так мы сможем на самом деле ВИДЕТЬ перемещение данных и логические решения. Это должно быть превосходно».

Компьютер Megaprocessor пригоден для программирования и простых видеоигр. В частности, Ньюмэн экспериментировал с Tetris и другими классическими играми. При этом он отметил, что играть в игры на столь большом компьютере не просто.

Он выразил надежду, что его творение будет полезным наглядным пособием в школе или институте. Сейчас же он планирует несколько дней открытых дверей у себя дома. Он отметил: «Я сомневаюсь, что смогу продать его. Моя мечта, чтобы он оказался в музее или образовательном институте, так эти люди смогут на нём чему-то научиться».

https://nvworld.ru/news/2016/07/20/#brit-made-megaprocessor

https://www.youtube.com/watch?v=z71h9XZbAWY

Линукс заработает на таком?

petyanamlt
()

Очень не Ъ spectrum

 ,

Привет, LOR. Когда я выкладывал в прошлый раз фото устройства видеозахвата и контроллера ЖК матрицы для старых компьютеров, кто-то предложил сделать тоже самое для zx-spectrum. Конечно, живого спектрума у меня не нашлось, поэтому следуя одному из принципов OpenSource «жри что дают» «если чего-то нет, сделай сам» собрал свой. В основе устройства лежит плата STM32F4discovery, на микроконтроллере которой эмулируется процессор и память. На ПЛИС собран контроллер ЖК дисплея от сломанного дешового китайского нетбука, обеспечивает отображение всех 8 цветов spectrum'а с атрибутами яркости и мигания. Еще к плате к USART подключен контроллер клавиатуры (от тогоже нетбука) на контроллере ATMega32, надо же их куда-нибудь девать. Звук пока выводится только пьезодинамиком, может когда-нибудь сделаю эмуляцию AY. На всем этом запущена Dizzy 3. Извините за качество фото, зеркалки нет.

Rupricht
()

Воскрешение живых мертвецов - 2 : ZX-Spectrum

 ,

На картинке вы можете видеть полностью живой и работающий Sinclair ZX-Spectrum +2, произведённый 26 лет назад. Машина подключена к PC посредством TV тюнера (Pinnacle PCTV USB2), через который PC получает и выводит изображение и звук. На данный момент, загружается один известный в своё время экшн. Лицензионные кассеты, ровесники данной машины, до сих пор отлично выполняют свою роль носителя информации - игры грузятся, сейвы сейвятся (сравните с дискетами, которые столько не живут, да и с оптическими болванками). Картинка и звук от реальной машины - тёплые и ламповые. Например, обратите внимание на цифру «2» на скриншоте - она «коричневая», а не состоящая из кубиков-пикселей, как на эмуляторе. Система на PC - свежеустановленная полностью дефолтная Slackware 14, KDE, картинку выводит Mplayer. Punk's not dead !

lenin386
()

Сколько ГГц можно выжать из z80 на современном техпроцессе 14нм?

 ,

Известно, что до бесконечности увеличивать тактовую частоту ЦП нельзя. Проводники в волноводы превращаются, нагрев возрастает и т.д. Потолок - примерно 5 ГГц, если не охлаждать жидким азотом. Но это современные монструозные ЦП. А если мы возьмём архитектуру Z80? Она ж простая как 3 копейки. Сможем мы её разогнать до 7-8 ГГц на современном техпроцессе? И с воздушным охлаждением? Или же ограничения в физике, а не в сложности архитектуры? А как же тогда транзисторы под сотни ГГц? Ведь они существуют.

tiinn
()

Производительность C++

 ,

Как насчёт производительности у C++ по сравнению с C? Мои предположения на текущий момент:

1) Код, не использующий возможности C++ (то есть по сути plain C), скомпилированный C++ компилятором будет иметь абсолютно ту же производительность, что и код на С.

2) Исключения и dynamic_cast медленные. Если нам важна производительность, лучше их не использовать.

3) Класс без виртуальных методов, должен быть по производительности эквивалентен сишной структуре и функциям, обрабатывающим её. Не считая копирования. Нужно везде, где можно использовать передачу по указателю или ссылке (собственно, если в Си делать memmove при передаче структуры в качестве аргумента, то это вызовет примерно такой же оверхед, как дефолтный конструктор копирования С++. Верно?).

4) Класс с виртуальными методами полностью аналогичен пункту 3, но при вызове виртуальных методов добавляется небольшой оверхед. Сишный эквивалент obj->vtable->func(obj, ...). Если сравнивать с plain C кодом, реализующим ООП в той же манере (каждая структура-объект имеет поле, указывающее на структуру, содержащую адреса функций работы с ней), то оверхеда по сравнению с plain C не должно быть.

5) При использовании атрибута класса final (если компилятор поддерживает соответствующий стандарт) даже при наличии виртуальных методов в нём, их вызов будет превращаться в прямые вызовы функций вместо обращения к vtable, если переменная имеет соответствующий тип, а не указатель/ссылка на его предка (который не final).

6) Шаблоны могут привести к разбуханию кода. Впрочем, #define-ы и inline-функции в C++ могут устроить то же самое. Вопрос: будет ли использование шаблона с одинаковыми параметрами создавать 2 копии реализации или же всё-таки компилятор догадается сделать её лишь один раз. А если шаблон используется с одинаковыми параметрами в нескольких объектных файлах? Будет ли реализация расшариваться между ними или у каждого своя?

7) Что насчёт inline-методов класса? (те, которые описываются прямо в момент определения самого класса, внутри блока class). Может ли их реализация расшариваться между модулями или в каждом будет своя копия (допустим, метод слишком длинный, чтобы инлайнится в момент вызова)?

Я не претендую на правоту, какие-то утверждения могут быть ложными. Хотел бы узнать, как обстоят дела на самом деле. А также какие подводные камни я ещё не знаю. Разумеется, речь идёт о последних версиях gcc/clang с включённой оптимизацией не ниже -O2.

KivApple
()

Турбовинтовые стратегические бомбардировщики. В чём суть?

 

Сабж. Разве винт имеет преимущества перед рекативным двигателем?

next_time
()

Оборонщики получат полностью российский суперкомпьютер

Комплектующие и микроэлетроника для российского суперкомпьютера будут производиться на территории Юго-Восточной Азии.

http://lenta.ru/news/2014/04/09/super/

хе-хе

fish_ka
()

[GCC][MinGW] Кроссплатформенность и wchar_t

 ,

Здраствуйте! Существует проблема. Нужно сделать так чтобы код скомпиленный под разными компиляторами (GCC и MinGW) работал одинаково. Это возможно? PS: Буду оч признателен за советы

Есть код:

// uni.c
#include <stdio.h>
#include <wchar.h>
#include <locale.h>

int main(void)
{
	setlocale(LC_ALL, "ru_RU.UTF-8");
	printf("Size of wchar_t = %d\n", sizeof(wchar_t));
	FILE* f = fopen("/home/maxim/uni.txt", "r");
	if (!f)
		return;
	printf("Read = 0x%04X\n", fgetwc(f));
	printf("Read = 0x%04X\n", fgetwc(f));
	return 0;
}

Есть файл uni.txt записанный в кодировке UTF-8:

$ cat uni.txt
Яблоко

Если скомпилировать программу под gcc и выполнить то получим:

$ gcc -o uni uni.c && ./uniSize of wchar_t = 4
Read = 0x042F
Read = 0x0431

Если скомпилировать программу под mingw и выполнить то получим:

$ i486-mingw32-gcc -o uni.exe uni.c && wine ./uni.exe
Size of wchar_t = 2
Read = 0xFFD0
Read = 0xFFAF

Если запустить нативно программу под виндой то там будет такое:

>uni.exe
Size of wchar_t = 2
Read = 0x00D0
Read = 0x00AF

anterior
()

каталогизация фото и видео файлов. exiftool

 , , ,

Добрый день, накатал скрипт на bash для каталогизации файлов, в основном для фото\видео, но можно вообще для любых файлов. принцип: exiftool берет данные из метатегов, создает каталоги по принципу ГОД ГОД.МЕСЯЦ и ложит туда файлы.

хотелось бы адекватной критики и дополнений

http://www.odmins-it.ru/forum/index.php?action=dlattach;topic=591.0;attach=1750 или http://sourceforge.net/projects/wita/files/

addmaster
()

Есть ли сигнал, уведомляющий о разорванном соединении?

 , ,

Здравствуйте.

Есть один одна прокси-програмка (из fcgi в tcp). Сначала она слушает fcgi-сокет, устанавливает на нем соединение, подключается по TCP к другому сокету и читает из него в блокирующем режиме.

Но вот беда, браузеры не любят долгих соединений и через пару минут fcgi-соединение обрывается. Но узнать я об этом не могу, т.к. занят чтением из TCP.

Можно ли поймать сигнал о разрыве fcgi-соединения или еще как-то решить проблему, не прибегая к таймаутам и epoll'ам?

makoven
()

Редактор диаграмм под Linux

 , ,

Хочется рисовать MindMaps. Что нового, свежего и красивого появилось за последние 3-4 года?

pacify
()

Непонятки с вызовом метода __init__, определённого для предка

 ,

<ipython-input-28-9a235b20b67c> in __init__(self, path, bound)
     29     def __init__ (self, path, bound):
     30         self.bound = bound
---> 31         super(Rule, self).__init__( path)
     32 

TypeError: must be type, not classobj

Код такой:


class Rule:

    def __init__(self, path):
        self.path = path

class sideRule(Rule):

    def __init__ (self, path, bound):
        self.bound = bound
        super(Rule, self).__init__( path)

Python 2.7.6, IPython 2.0.0

ados
()

Google Chrome repository: main/binary-i386/Packages

 , ,

Записал в /etc/apt/sources.list.d/jessie.list:

# Google Chrome
deb http://dl.google.com/linux/chrome/deb/ stable main

Но apt-get update ругается:

W: Не удалось получить http://dl.google.com/linux/chrome/deb/dists/stable/Release  Невозможно найти ожидаемый элемент «main/binary-i386/Packages» в файле Release (некорректная запись в sources.list или файл)

E: Некоторые индексные файлы не скачались. Они были проигнорированы или вместо них были использованы старые версии.
Неужели адрес репозитория изменился? Ключ добавил:
# wget -O - --no-check-certificate https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
--2016-04-03 16:37:25--  https://dl-ssl.google.com/linux/linux_signing_key.pub
Распознаётся dl-ssl.google.com (dl-ssl.google.com)… 173.194.71.91, 173.194.71.136, 173.194.71.93, ...
Подключение к dl-ssl.google.com (dl-ssl.google.com)|173.194.71.91|:443... соединение установлено.
HTTP-запрос отправлен. Ожидание ответа... 200 OK
Длина: 1745 (1,7K) [text/plain]
Сохранение в: «STDOUT»
/2016-04-03 16:37:25 (28,3 MB/s) - записан в stdout [1745/1745]

OK

pacify
()

Какие книги по С(89) нужно прочесть после K&R?

 ,

Изучил си по книге K&R(2-ое издание), писал мелкие программки. Понравилось. Какую литературу/статьи по C читать дальше?

P.S. Нужен ли C-шнику C++?

Deleted
()

Fedora Workstation 23

 , ,

Привет, ЛОР.

Моя неубиваемая машина Aspire M3910 с Fedora Workstation 23 на борту. Ноль расширений, ну разве только User Themes. В общем Fedora радует.

region51
()

Вышел первый том книги А. В. Столярова «Программирование: введение в профессию»

 , ,

Группа Документация

На официальном сайте А. В. Столярова объявлено о выходе первого тома книги «Программирование: введение в профессию». Первый том, озаглавленный «Азы программирования», включает две части: «Введение» и «Язык Паскаль и начала программирования». Обе части, как и вся книга в целом, ориентированы на использование ОС Unix (в основном Linux); в предисловии автор, обращаясь к «коллегам-преподавателям», заявляет, что книга вряд ли будет им полезна, если командная строка ОС Unix не станет их основным инструментом для повседневной работы с компьютером.

Электронная версия первого тома (PDF) доступна на сайте в открытом доступе.

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

Как сообщалось ранее в новостной ленте сайта, второй том книги, который выйдет под заголовком «Низкоуровневое программирование», уже практически готов к печати. В него войдут часть о программировании на языке ассемблера NASM для ОС Unix, а также часть, посвящённая языку Си. Пока неясно, войдёт ли в этот же том часть, рассказывающая о принципах построения операционных систем и о возможностях, доступных на уровне системных вызовов ОС Unix, или же эта часть будет оформлена как отдельный том. Сроки издания второго тома также пока неизвестны, поскольку зависят от дальнейшего хода краудфандинговой кампании.

>>> Подробности (stolyarov.info)

Croco
()

Сортировка строк с числами в python

 

Нет ли в стандартной библиотеке python решения для сортировки строк, содержащих числа таким образом:

aa1
aa2
aa10

?

Стандартные sort и sorted сортируют так: «aa1 aa10 aa2», то есть чисто по алфавиту.

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

te111011010
()

Лидеры свободного программного обеспечения отвечают MS

Группа Open Source
Столлман, Эрик Реймонд, Линус, Мигель де Иказа (Gnome), Ларри Уолл (автор Perl), Гвидо ван Россум (автор Python), Тим O'Орейлли (O'Reily) и многие другие столпы Свободного Мира сочинили по инициативе Брюса Перенса обращение к Microsoft в ответ на нападки Mundie.

>>> Подробности (perens.com)

sevast
()