В английской википедии (http://en.wikipedia.org/wiki/Dynamic_programming) неплохой список задач, при решении которых используется динамическое программирование. Я сам с русской терминологией практически не знаком, поэтому переводить не берусь.
От себя добавлю, что исторически сложившийся термин "динамическое программирование" (как и линейное или математическое) к программированию отношения не имеет, а подразумевает оптимизацию, т.е. суть ДП - именно поиск "хорошей" рекурсии для решения поставленной задачи.
В программировании же способ оптимизации рекурсии средством запоминания значений функции в некоторых точках называется memoization, и в случае функций, значение которых зависит только от их аргументов, решается компьютером. В некоторых языках (maple, к примеру) этот функционал встроен, в некоторых легко строится на ленивых вычислениях, в других существуют готовые библиотеки.
Речь не о том, что должен знать или уметь хороший админ - об админах и речи нигде не было.
Я просто хотел сказать, что знание `subj` не исчерпывается тем, что описано в статье (с точки зрения админа - почти; разработчик ядра же, к примеру, ожидает совсем другой ответ), и нигде не указывал, чем оно исчерпывается.
Моя критика относится не к статье, а к заголовку. Я также выразил свои соображения насчет подачи материала новичкам. Им не следует рассказывать, что загрузка linux - это инитскрипт. Может быть, кому-то будет легче понять, как они работают, исходя из предложенного кода, но и в таком случае поймут они это не здесь. И значительного упрощения процесса я здесь не вижу.
Новичкам я бы все-таки рекомендовал вникнуть в rc.d тех же slackware (лучше документированных скриптов пока не видел) или arch.
Не соглашусь. Чтобы знать "как загружается Linux", нужно, во-первых, иметь представление об организации железа и операционной системы, и, во-вторых, понимать процесс на уровне абстрактции boot loader -> linux -> init.
А насчет инитскриптов - по-моему, имеет смысл разве что рассказать, что от них вообще нужно, и дать книжку про sh. И перед тем, как кому-то пригодится написание своих инитскриптов, ему пригодится знакомство с rc.d или sysvinit.
Ввиду вышеизложенного считаю более правильным заголовок "как работает runit при загрузке моего Линукса" ;)
Это стеб?
- Угадываемый объект ничем, но это не он?
- Угадываемый объект содержательнее?
- Угадываемый объект не может торчать?
- Угадываемый объект не тем, что "он"., а тем что "ты" - тупое уебище. Убей себя об стену сцуко?
И еще было бы интересно про матмодель, особенно если ушел на нее действительно "один световой день"?
От себя добавлю, что исторически сложившийся термин "динамическое программирование" (как и линейное или математическое) к программированию отношения не имеет, а подразумевает оптимизацию, т.е. суть ДП - именно поиск "хорошей" рекурсии для решения поставленной задачи.
В программировании же способ оптимизации рекурсии средством запоминания значений функции в некоторых точках называется memoization, и в случае функций, значение которых зависит только от их аргументов, решается компьютером. В некоторых языках (maple, к примеру) этот функционал встроен, в некоторых легко строится на ленивых вычислениях, в других существуют готовые библиотеки.
Речь не о том, что должен знать или уметь хороший админ - об админах и речи нигде не было.
Я просто хотел сказать, что знание `subj` не исчерпывается тем, что описано в статье (с точки зрения админа - почти; разработчик ядра же, к примеру, ожидает совсем другой ответ), и нигде не указывал, чем оно исчерпывается.
Моя критика относится не к статье, а к заголовку. Я также выразил свои соображения насчет подачи материала новичкам. Им не следует рассказывать, что загрузка linux - это инитскрипт. Может быть, кому-то будет легче понять, как они работают, исходя из предложенного кода, но и в таком случае поймут они это не здесь. И значительного упрощения процесса я здесь не вижу.
Новичкам я бы все-таки рекомендовал вникнуть в rc.d тех же slackware (лучше документированных скриптов пока не видел) или arch.
А подход runit интересный, спасибо за статью :)
А насчет инитскриптов - по-моему, имеет смысл разве что рассказать, что от них вообще нужно, и дать книжку про sh. И перед тем, как кому-то пригодится написание своих инитскриптов, ему пригодится знакомство с rc.d или sysvinit.
Ввиду вышеизложенного считаю более правильным заголовок "как работает runit при загрузке моего Линукса" ;)
> можно ли сделать из этого проекта что-то дельное
Сделать можно все, что угодно - другой вопрос, что из текущего codebase в нем останется. Как насчет самоучащейся системы?
Желаю удачи.
- Угадываемый объект ничем, но это не он?
- Угадываемый объект содержательнее?
- Угадываемый объект не может торчать?
- Угадываемый объект не тем, что "он"., а тем что "ты" - тупое уебище. Убей себя об стену сцуко?
И еще было бы интересно про матмодель, особенно если ушел на нее действительно "один световой день"?