Какой процесс планировщика систему Linux используете?

Я не совсем уверен, если сайте StackOverflow или serverfault-это форум для этого вопроса, но плохо попробовать здесь.

Есть некоторые команды я могу использовать или файл, я могу проверить, чтобы выяснить, какой процесс планировщик я использую на моей системе Linux? Я не ищу планировщик ввода/вывода, но процесс планировщика, и, пожалуйста, не ссылайтесь на справочники или путеводители по какой планировщик, что я просто прошу, если есть команда или файл можно запустить/проверить, чтобы увидеть это. Я мог бы проверить док для моего ядра, но опять же мне просто интересно, если есть команда или файл можно проверить.

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

+163
Dammar magar Magar 26 нояб. 2014 г., 10:06:41
26 ответов

Согласно запросу, переписанные из комментария:

Я не думаю, что Linux 0.01 будет особенно большой источник для C Программирование :-)

Вместо того, чтобы попробовать Миникс. Миникс используется для обучения разработке операционной системы, поэтому он является гораздо лучшим источником для изучения таких вещах.

http://www.minix3.org

http://wiki.minix3.org/en/DevelopersGuide

+968
vai tomar no cu 03 февр. '09 в 4:24

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

Я думаю, для моего ядра, я использую только 1% от всего кода ядра (порядок оценки величины).

Есть ли способ, чтобы выяснить, какие файлы из исходного ядра, я на самом деле используется при сборке ядра?

Это не академический вопрос. Предположим, я собрал ядро 3.18.1. Сейчас идет обновление безопасности, и 3.18.2 освобождается. Я узнал на мой другой вопрос Как узнать какие файлы были изменены с выходом новой версии. Если бы я знал, то ли какой-то из файлов я использую изменились, я бы перекомпилировать ядро до новой версии. Если, с другой стороны, изменения влияют только на те файлы, которые я не использовали, в любом случае я могу сохранить текущую версию ядра.

+954
Ikhsan Korg 10 мар. 2016 г., 18:46:32
Другие ответы

Связанные вопросы


Похожие вопросы

С помощью оболочки Bourne (или bash, который является надмножеством) делать он будет держать решение 100% в POSIX:

судо ./list_members | в то время как line чтения; делать Эхо "префикс ${линия}"; сделано
+915
human torch 15 мая 2012 г., 13:49:30

Используя СЭД:

СЭД -Е 'Н;in.txt з/\п/\т/' 

объединившись каждые две строчки с одной вкладки между

+889
wizsid 8 окт. 2015 г., 17:35:27

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

Проверив выжать установить, что у меня дома, есть ряд функцией SpeedStep модулей, которые могут быть загружены. Я не уверен, какие из них необходимы для вашей конкретной машины. Вы можете попробовать их по-одному.

-RW-р-р-- 1 корень 7500 Октября 3 17:07 она-центрино.ко
-RW-р-р-- 1 корень 7120 Октября 3 17:07 она-ич.ко
-RW-р-р-- 1 корень 6912 Октября 3 17:07 она-Либ.ко
-RW-р-р-- 1 корень 8152 Октября 3 17:07 она-ГИУ.ко

Проверьте, что они уже загружены с помощью lsmod распечатывает | грэп она команду.

+821
dkobozev 7 апр. 2016 г., 04:16:01

пробовал установить ignoreeof или установить ignoreeof=<любое значение, не 1> работает

+808
Aussiemom 18 июн. 2013 г., 16:31:23

Определенно пойти для Linux! Особенно в месте, где количество незнакомых людей будут использовать его... и я также предлагаю, чтобы сделать доступными только для пользователей терминалов (терминальный сервер - клиентской модели терминала), чтобы блокировать их от физического доступа к самой машине. Пользователи, как правило, на просмотр не безопасных сайтов, подключить различные USB-устройства с черт знает, что Зло живет внутри... M$ является слишком чувствительным для этих злых битов и лопнет в конце концов (вам повезет, если одного узла повлечет за собой распространение вредоносных программ на другие..). В Linux вам не придется беспокоиться об этом. Да, есть некоторые недостатки с учетом совместимости как M$ производство не работает, что хорошо на *Nix, но вы всегда можете захватить копию вина (если Linux альтернатив не достаточно хорош для вас) или даже использовать виртуальную машину с Windows, предустановленной на нем если вам это нужно, что много. Если кто-винты с вашей виртуальной машине, вы всегда можете восстановить его в течение нескольких минут (или столько, сколько нужно скопировать один файл ВМ из резервных копий..)

В Linux Mint-это один большой выбор. Это очень хорошо выглядит (не так хорошо, как в KDE, но KDE как зарегистрироваться в багги... да, даже сейчас с последними выпусками - я делаю это аварии, делая...ничего..), очень удобно, достаточно быстро и почти все пакеты уже предустановленной.

Если бы я был тобой, я бы уже сделал модель сервера-терминалов и установлен любой вкус *Убунту/Минт там...

P. S. Для начала вы можете построить как отдельный компьютер (или несколько) с мятой в ней/них, чтобы увидеть, как люди реагируют. Сделать несколько объявлений для привлечения клиентов к Linux hosts, чтобы попробовать их. Если люди склонны придерживаться их позже - ты определенно хорошо, чтобы перейти на Linux.

+798
user257076 11 июн. 2019 г., 13:44:56

Это решение также распространяется на ЗШ

Флаг="-м переменной"
Описание="Это очень ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ очень длинное предложение"
DISTANCE_FLAG=3

ШИРИНА1=$(Эхо "$флаг" | туалетом -с ) 
Ширина2=$(($(выход седла)-$DISTANCE_FLAG -$ШИРИНА1 ))

вставить <(Эхо $флаг ) <(Эхо $описание | фолд -ео $(( $(выход седла) - $DISTANCE_FLAG -$ШИРИНА1 )) )| пр-т -е$(($DISTANCE_FLAG+$ШИРИНА1))
+783
om sai 28 окт. 2013 г., 07:46:04

У меня есть строка, как показано ниже:

инженер,врач,"987,345,123",инженер

Я хотел изменить его на ниже в Unix:

инженер,врач,"987345123",инженер
+781
Alexander Yatsenko 24 янв. 2019 г., 06:10:36

Взгляните на XDA распаковки. Я понимаю, что они вероятно не покрывают ваш телевизор, но глядя на других на основе Linux распаковки устройства будет проблема вам помогу тонн. Nook и одна довольно интересная.

http://www.xda-developers.com/tag/xda-unboxing/

Просто как @ali1234 предложил, возможно, вам придется разобрать ее.

+697
Tudorache 5 мар. 2013 г., 20:14:35

Вы можете указать раздел в качестве первого аргумента к человеку:

человек ждать
человек 1 ждать

Для БСД общие команды инструкция для счас

человек 2 ждать

Это откроет системе BSD призывает руководство для счас

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

Примечание: Я проверил это в FreeBSD, но надо же на MacOSX или почти любой операционной системы POSIX, но как и Linux, Солярис и т. д.

+687
Lewdite 30 дек. 2013 г., 17:58:30

Эффективно, Тоу хотите позвонить перезагрузки(2) системный вызов.

Два способа вы можете сделать это:

  1. Запустите перезагрузите -Ф или выключения -Ф, это должно вызвать перезагрузку(2) напрямую.

  2. Если вы на реальном Linux виртуальный терминал (не графический эмулятор терминала), нажав сочетание клавиш Ctrl+клавиши Alt+удалить.

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

Все вышеперечисленные команды должно быть сделано после umount-ки все диски или перемонтирование только для чтения и выполнения синхронизации, в противном случае вы можете потерять незаписанные данные. Если ваша оболочка-это единственный процесс, запущенный, синхронизация может быть достаточно.

+670
Rik Sleit 24 дек. 2015 г., 13:28:35

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

# создаем директорию для данных снимков 
команды mkdir /ВМ/$домен/снимки/$SNAPSHOT_NAME

# создание моментального снимка
моментальный снимок-создать-как вирш \
--SNAPSHOT_NAME домен $домен $\
--diskspec ВДА файл=/ВМ/$домен/снимки/$SNAPSHOT_NAME/диск.формат qcow2,снимок=внешние \
--memspec файл=/ВМ/$домен/снимки/$SNAPSHOT_NAME/мэм,снимок=внешние \
--атомный

Если виртуальная машина была названа виртуальной машины VM1 и мой снимок назывался база-установка для создания моментального снимка сразу после установки, то у меня есть структура папок, как так:

/
|- ЗИС/
 |- виртуальной машины VM1/
 |- диск.формат qcow2
 |- снапшотов/
|-основание-установка/
|-диск.формат qcow2
|-мэм

Сейчас эта структура является тем, чем я хочу выглядеть, но, к сожалению, диска.формат qcow2 файлы наоборот (должны быть заменены). На диск.формат qcow2 файл в базе-установка папку моментальных фактически наложение образа диска, что занимает всех будущих записей в виртуальной машине, а не нужные только для чтения, резервное файл диска, состояние на момент создания моментального снимка. Диск.формат qcow2 файл непосредственно под виртуальной машины VM1 папка только для чтения резервном файле, а не в последний наложения образа диска.

Вопрос

Есть ли способ я могу изменить вирш снимка-создать-как команда, так что он будет хранить только для чтения, резервное файл на указанный диск-спецификаций пути, и сохранить оверлей указатель диска файл где она уже есть? Кроме того, есть обходной путь, как "приостановка" ВМ, поменять файлы с диска, обновление XML-определение гостя, а затем возобновить ВМ? В идеале я не хочу, чтобы закрыли гостем или стать причиной заметного периода простоя.

+643
Ibrahim Nadir 18 окт. 2017 г., 22:45:31

У меня есть два дистрибутива Линукс: Убунту-Гном и Fedora-KDE о, как, имея почти одинаковые кучу приложений. Большинство моих приложения устанавливаются в папку/opt пространство отдельно для обоих дистрибутивов.

Я использовал обычные монтажники для обоих. например: VirtualBox обладает "всех дистрибутивах файл", который был использован, для JDK я использую ".файл tar.gz" еще один пример можно браузера Firefox.

Сейчас на жестком диске заканчивается свободное место и я хочу присоединиться к общим в /опт диск, сохраняя общую приложения в общий /опт пространства и управление ОС разрешения на доступ к папке соответственно. Можно ли сделать такую вещь?

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

+623
user221245 6 сент. 2014 г., 10:22:39

Можно ли исключить определенные файлы в пакет.установите файл?

Не напрямую, но есть как минимум три способа достижения того, что вы после. (Поскольку вы упоминаете переопределение dh_install, я предполагаю, что вы используете короткие-ДХ стиль правила.)

  1. dh_install копирует файлы в Debian/tmp в к своей цели. Его предшественник, dh_movefiles, перемещает их, это устаревший, но все еще можно использовать в такой ситуации. Способ сделать это, чтобы список пакетов , а перед пакетом Б в дебиан/управления (так он обрабатывается в первую очередь, при условии, что обе имеют одинаковую архитектуру), переименовывать А. установить на А. файлы, и переопределить dh_install так, что он работает dh_movefiles первый:

    override_dh_install:
    dh_movefiles
    dh_install
    

    Это позволит переместить файлы в из в Debian в/tmp, так что ваш Б. установить файл может тогда список скриптов и Б будут все файлы, которые остались в скриптах.

    На ЦТ последовательностей пропустить dh_movefiles так что нет ничего особенного, чтобы сделать, чтобы избежать его работы в два раза.

  2. утилиты файлы конфигурации могут быть исполнены, так что вы могли бы заменить Б. установить скрипт, который перечисляет скрипты’ содержание и отфильтровывает все, что в А. установить.

  3. Другой подход мог бы добавить шаг после dh_install , который удаляет ничего , а из Б; как-то так

    override_dh_install:
    dh_install
     компакт-дисков Debian/а/скриптов; найти . -тип F -exec для РМ -Ф ../Б/скрипты/{} \;
    

    (непроверено).

+575
Eva villagonzalo 31 мая 2010 г., 01:27:20

Я думаю, что уведомить-прислать опирается на Д-автобус на большинстве систем, и самый распространенный способ контактировать ДГУ осуществляется через $и в части дизайна переменной. Однако жесткого кодирования это в кронтаб , наверное, не очень выполнимая, так как автобус-адрес меняется каждый раз, когда вы запустите новый экземпляр ДГУ, который обычно происходит, когда вы войдите или перезагрузить. Arcege это решение звучит как хорошее решение.

+524
aod 11 июн. 2014 г., 14:25:53

Так я хотел назвать два фона СШ процессов:

СШ-Д на localhost:8087 -ФН АРМ-шлюз-vpc1
СШ-Д на localhost:8088 -ФН АРМ-шлюз-vpc2

Эти шлюзы не имеют преимущество, позволяя мне перевести файл authorized_keys, так что я должен быть предложено для моей интерактивной пароль. Именно поэтому я использую на F- флаг, а не оболочки & , который будет только фоновый процесс после проверки подлинности в интерактивном режиме.

В этом случае мне представляется не в состоянии использовать $! переменную в bash, чтобы получить пид недавно [собственной] процесс в фоновом режиме.

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

+401
Cody Melancon 28 июл. 2012 г., 12:08:21

для того, чтобы пользователи видят только свои собственные процессы (кроме root может видеть все), вы должны отредактировать файл/etc/fstab строчку

прок /тез Докл умолчанию,hidepid=1 0 0

Примечания:

  1. hidepid=0 (по умолчанию): этот параметр установлен по умолчанию и дает вам по умолчанию поведение.
  2. hidepid=1: с этой опцией, обычный пользователь не видит других процессов, но и свои собственные о PS, топ и т. д., Но он по-прежнему сможете увидеть процесс идентификаторов в файле/proc
  3. hidepid=2: пользователи могут только видеть свои собственные процессы (как с hidepid=1), а также другие идентификаторы скрыты для них в файле/proc
+392
Ayushi Dalmia 18 мар. 2019 г., 20:31:21

Я не понимаю, что означает знак доллара сделать. Особенно в этом контексте:

для URL в $(кошка example.txt); размещаем $URL-адрес; 
+336
zed 25 окт. 2012 г., 22:25:27

Если вы уже пробовали команду ifconfig как wlan0 вниз / вверх рутины, попробовать запустить также: airmon-ng может проверить убить

Он будет убивать некоторых противоречивых процессов (например, сетевой менеджер). Вероятно, этого будет достаточно. Также стоит отметить, что модель TL-WN772N имеет двух версиях с разными чипсетами. Если у вас есть V2, я думаю, вам не повезло.

+299
Rich Alger 14 июл. 2012 г., 14:32:29

Я следовал этой статье, смешанный с некоторыми другими исследованиями, в стремлении сделать хост конфигурации и работает на моем Mac. Однако, по какой-то причине, когда я перейдите к моему местные.сайте.камни в URL, который заканчивается посылая меня в поиск через моего провайдера (странно).

Вот мой файл httpd-vshosts.конф файл:

#
# Имя на основе виртуального хостинга.
#
NameVirtualHost *:80

Раздел <VirtualHost *:80>
 DocumentRoot так, "в/var/www в/"
 Имя_сервера имя localhost
</Хост>

Раздел <VirtualHost *:80>
 Издание [email protected]
 Сайт имя_сервера.камни
 ServerAlias местных.сайте.камни
 Журнал "/частная/ВАР/лог/apache2 не/сайты.камни-функцию error_log"
 CustomLog "/частная/ВАР/лог/apache2 не/сайты.камни-access_log" общие
 <Директория "/var/www и/сайте.камни/public_html/">
 Индексы Опции FollowSymLinks
 Всех Allowoverride
 Приказ разрешить,отказать
 Позвольте от всех
</Каталог>
</Хост>

Вот Мои хосты файл:

##
Хост Базы Данных # 
#
# имя localhost используется для настройки интерфейса замыкания на себя 
# при загрузке системы. Не изменяйте эту запись.
##
127.0.0.1 localhost в
255.255.255.255 broadcasthost 
::1 localhost в
127.0.0.1 местных.сайте.камни

Кроме того, я уверен раскомментируйте включают в vshosts файл. Кроме того, я выпустить apachectl перезагрузить , прежде чем пытаться перейти к URL-адрес.

Что я пропустил здесь? Это должно быть что-то простое.

+238
Jay Toser 28 апр. 2011 г., 14:32:28

Я пытаюсь написать простой скрипт для извлечения мем и использование подкачки из списка хостов. В настоящее время единственным способом я могу добиться этого-написать 3 отдельных скриптов:

Для в {1..9}; делать Эхо "bvrprdsve00$а; $(СШ-м bvrprdsve00$"Эхо \$(бесплатно -м|grep в мэм|/ОГРН/у awk '{печати \$4}';бесплатно -м|грэп замена|/ОГРН/у awk '{печати \$4}')")"; сделано > /tmp/svemem.txt;
Для в {10..99}; делать Эхо "bvrprdsve0$а; $(СШ-м bvrprdsve0$"Эхо \$(бесплатно -м|grep в мэм|/ОГРН/у awk '{печати \$4}';бесплатно -м|грэп замена|/ОГРН/у awk '{печати \$4}')")"; сделано >> /tmp/svemem.txt;
Для в {100..218}; делать Эхо "bvrprdsve$а; $(СШ-м bvrprdsve$"Эхо \$(бесплатно -м|grep в мэм|/ОГРН/у awk '{печати \$4}';бесплатно -м|грэп замена|/ОГРН/у awk '{печати \$4}')")"; сделано >> /tmp/svemem.txt

Причина этого заключается в том, что имя всегда заканчивается 3-значный номер и эти узлы идут от 001-218 так что мне нужно делать другой цикл for для каждого набора (001-009, 010-099, 100-218). Есть ли способ я могу сделать это в одном скрипте вместо вступления 3 вместе?

+215
Adejo willie Teminioluwa 22 февр. 2014 г., 04:38:26

Это для сопряжения версии :

Шрифты: Нажмите 'меню', тип 'реальностью' и нажмите кнопку, выберите вкладку : политики , то шрифт обновления и/или размер по мере необходимости.

Размер значков рабочего стола: Щелкните правой кнопкой мыши на значок, есть запись значок изменения размера, перетащите угол иконы.

+189
MostlyCarbonite 11 июн. 2012 г., 23:06:01

Океанограф друг на работе должен получить обратно за несколько месяцев данные. Она перегружена, поэтому я вызвался сделать это. Существуют сотни каталогов для резервного копирования и мы хотим смолы/Бзыбь их в файлы с таким же именем, как у каталога. Я могу сделать это достаточно легко серийно - но - я хотел воспользоваться несколько сотен ядер на моей рабочей станции.

Вопрос: используя найти с аргументы или GNU параллельно, как деготь/Бзыбь каталоги, используя столько ядер, как это возможно при именовании конечного продукта: origonalDirName.тар.bz2 файл?

Я использовал, чтобы найти bunzip выступает одновременно 100 файлов, и это было очень быстро - вот это и есть путь решения проблемы, хотя я не знаю как получить имя каждого файла, что для каждого каталога.

+156
Surendar 9 июн. 2018 г., 10:21:38

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

Что мне нужно сделать ?

Чтобы дополнить этот вопрос, я провела исследование, поэтому у меня есть теория.

  1. Установить процесс сродство ЦП использовать эксклюзивные ядро я хочу. И установить все остальные процессы, чтобы избежать этих основных.
  2. Установить планировщик Linux для использования ФИФО политики для процесса, это означает, что процесс не будет остановлен при выпуске процессора.
  3. Установить все процесс других холостом ходу, чтобы избежать конкуренции с ФИФО политики.
  4. Установить параметр ядра isolcpus, чтобы избежать ядра использовать эти ядра процессора.

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

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

+120
delton 8 февр. 2015 г., 05:57:51

Вы можете найти этот Perl и elisp сочетание полезных. Это позволяет данные трубы в буфер. Последующие вызовы, используя один и тот же буфер-имя будет добавлять новые строки в том же буфере.

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

из=50000000
к=50000010
<file_50 руководитель -Н "долларов" | хвоста -Н +"долларов" | e-sink.pl

В буфере:

<<<<< старт: 2012-09-09T01:39:49
1000000
VSjU K97X5Z dFcc ZZd2OqQ PzbnphT
yQBTt Лоик КС sPXrq телетайп ой
dA8 БВО СД даз KFPr44X
X0m3BI eR4go YjFp7e vbJr3oe Y0OGgH3 uPfz yfq59
мы РМ ugcJBND L9iD дас

7pO lwUFzNE HPlPW рыбохозяйственную заповедную зону впрс ГХ EFeHaFM
В0 1Б РНС Db324 Пуо Un34R
HDZS wq9zg W013 5JGly
АСВК QPpjjyh pXMAw И1 qCBnP CGKDc23 
<<<<< конец: 0.630 сек

Или, с номерами строк добавил:

из=50000000
к=50000010
<file_50 руководитель -Н "долларов" | хвоста -Н +"долларов" | н. л.- в$из -ба -ш${#к} | e-sink.pl

В буфере:

<<<<< старт: 2012-09-09T01:53:44
50000000 1000000
50000001 VSjU K97X5Z dFcc ZZd2OqQ PzbnphT
50000002 yQBTt Лоик КС sPXrq телетайп ой
50000003 dA8 БВО СД даз KFPr44X
50000004 X0m3BI eR4go YjFp7e vbJr3oe Y0OGgH3 uPfz yfq59
50000005 мы РМ ugcJBND L9iD дас
50000006 
50000007 7pO lwUFzNE HPlPW рыбохозяйственную заповедную зону впрс ГХ EFeHaFM
50000008 В0 1Б РНС Db324 Пуо Un34R
50000009 HDZS wq9zg W013 5JGly
50000010 АСВК QPpjjyh pXMAw И1 qCBnP CGKDc23 
<<<<< конец: 0.768 сек

Я нашел это на сайте StackOverflow вопрос/

+104
Pedro Dusso 3 февр. 2014 г., 20:01:50

Показать вопросы с тегом