Стоимость раскрутки сайта - 60 долларов на www.prodvigaem.org.ua
Лучшие книги интернета
Материалы предоставлены только для просмотра. Любое использование материалов в коммерческих целях запрещено

103Компьютерра



    Я попросил специалиста Unix shell быстро, не зарываясь в man, написать такой скрипт.
    Решение SH:
    %>ps A sort ‘%cpu’ format ‘%cpu,pid’ | egrep v ‘^ (0|1|2).’ | grep v ‘%CPU’ | tail —n3 | gawk ‘{print $2;}’ | xargs r kill
    Скрипт написан за семь минут, работает, и я его привожу как есть — без исправлений. Не буду объяснять, как он работает, отмечу лишь, что главной проблемой является необходимость выделения из набора строк, возвращаемых командой ps, нужные нам параметры процессов (в данном случае — процессоное время).
    Я уверен, что есть более правильные варианты, но они потребуют детального знания возможностей большого числа утилит.
    Решение Monad:
    C:\> get process | where object { $_.cpu gt 3 } | sort object property cpu | select object Last 3 | foreach object { $_.Kill() }
    get process — функция, возвращающая массив объектов типа System.Diagnostics.Process;
    where object — функция условия, которая сравнивает значение свойства с тройкой;
    $_ — переменная, содержащая элемент массива — объект класса Process;
    sort object, select object — сортировка и фильтрация массивов;
    foreach object — выполнить код для каждого элемента, в нашем случае — вызвать метод объекта — Kill()
    Эту же строку можно написать с использованием алиасов:
    C:\> ps | where { $_.cpu gt 3 } | sort cpu | select Last 3 | foreach { $_.Kill() }
    Читаемость варианта Monad даже не имеет смысл сравнивать с SH скриптом. Написано за минуту.
    Когда?
    Не будет преувеличением сказать, что Monad — это качественный скачок, переосмысление накопленного опыта в области управления операционных систем. В заключение несколько слов о том, когда же наступит светлое будущее.
    Релиз Monad должен появиться в составе Microsoft Exchange Server 12. Он работает на системах Windows XP, Windows Server 2003 или других системах, поддерживающих .NET Framework 2.0. Beta 3 находится в свободном доступе (download.microsoft.com).
    Ссылки
    [1]blogs.msdn.com/monad/de fault.aspx (сайт разработчиков Monad).

Предыдущая страница    103    Следующая страница





1224862192