-Поиск по дневнику

Поиск сообщений в pokachivat

 -Подписка по e-mail

 

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 20.06.2010
Записей: 50
Комментариев: 1
Написано: 50





Джесс Либерти - Указатели на функции члены

Вторник, 15 Февраля 2011 г. 18:35 + в цитатник

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

Для создания такого указателя используется тот же синтаксис, что и для указателя на обычную функцию, но с добавлением имени класса и оператора области видимости (::). Таким образом, объявление указателя pFunc на функции-члены класса Shape, принимающие два целочисленных параметра и возвращающие void, выглядит следующим образом:

void (Shape::*pFunc) (int,int);

Указатели на функции-члены используются так же, как и рассмотренные ранее указатели простых функции. Единственное отличие состоит в том, что для вызова функции необходимо наличие объекта соответствующего класса, для которого вызываются функции. В листинге 14.10 показано использование указателя на метод класса.

Листинг 14.10. Указатели на функции-члены

1: //Листинг 14.10. Указатели на виртуальные функции-члены

2:

3: #include <iostream.h>

4:

5: class Mammal

6: {

7:    public:

8:       Mammal():itsAge(1) { }

9:       virtual ~Mammal() { }

10:      virtual void Speak() const = 0;

11:      virtual void Move() const = 0;

12:   protected:

13:      int itsAge;

14: };

15:

16: class Dog : public Mammal

17: {

18:    public:

19:       void Speak()const { cout << "Woof!\n"; }

20:       void Move() const { cout << "Walking to heel...\n"; }

21: };

22:

23:

24: class Cat : public Mammal

25: {

26:    public:

27:       void Speak()const { cout << "Meow!\n"; }

28:       void Move() const { cout << "slinking...\n"; }

29: };

30:

31:

32: class Horse : public Mammal

33: {

34:    public:

35:       void Speak()const { cout << "Whinny!\n"; }

36:       void Move() const 1 cout << "Galloping...\n"; }

37: };

38:

39:

40: int main()

41: {

42:    void (Mammal::*pFunc)() const =0;

43:    Mammal* ptr =0;

44:    int Animal;

45:    int Method;

46:    bool fQuit = false;

47:

48:    while (fQuit == false)

49:    {

50:       cout << "(0)Quit (1)dog (2)cat (3)horse

51:       cin >> Animal;

52:       switch (Animal)

53:       {

54:          case 1: ptr = new Dog; break;

55:          case 2: ptr = new Cat; break;

56:          case 3: ptr = new Horse; break;

57:          default: fQuit = true; break;

58:       }

59:       if (fQuit)

60:          break;

61:

62:       cout << "(1)Speak (2)Move: ";

63:       cin >> Method;

64:       switch (Method)

65:       {

66:          case 1: pFunc = Mammal::Speak; break;

67:          default: pFunc = Mammal::Move; break;

68:       }

69:

70:       (ptr->*pFunc)();

71:       delete ptr;

72:    }

73:    return 0;

74: }


Результат:

(0)Quit (1)dog (2)cat (3)horse: 1

(1)Speak (2)Move: 1

Woof!

(0)Quit (1)dog (2)cat (3)horse: 2

(1)Speak (2)Move: 1

Meow!

(0)Quit (1)dog (2)cat (3)horse: 3

(1)Speak (2)Move: 2

Galloping

(0)Quit (1)dog (2)cat (3)horse: 0


Анализ: В строках 4—14 объявляется тип абстрактных данных Mammal с двумя чистыми виртуальными методами Speak() и Move(). От класса Mammal производятся подклассы Dog, Cat и Horse, в каждом из которых замещаются соответствующим образом функции Speak() и Move().

В процессе выполнения тела функции main() пользователю предлагается выбрать животное, после чего в области динамического обмена создается новый подкласс выбранного животного, адрес которого присваивается в строках 54—56 указателю ptr.

Затем пользователь выбирает метод, который связывается с указателем pFunc. В строке 70 выбранный метод вызывается для созданного объекта посредством предоставления доступа к объекту с помощью указателя ptr и к функции с помощью указателя pFunc.

Наконец, строкой 71 для указателя ptr вызывается функция delete, которая очищает область памяти, занятую созданным ранее объектом. Заметьте, что нет смысла вызывать delete для pFunc, поскольку последний является указателем на код, а не на объект в области памяти. Хотя даже при попытке сделать это вы получите сообщение об ошибке компиляции.


Любая методология может привести к провалу проекта. - Алистэр Коуберн

Четверг, 13 Января 2011 г. 00:18 + в цитатник

Тяжеловесные методологии тоже могут успешно применяться в работе.

Облегченные методологии чаще приводят к успеху, и, что более важно, разработчики сами говорят, что успех проекта был обеспечен именно методологией. Я не нашел ни одной теории, которая объяснила бы, почему облегченные методологии (те, в которых мало места уделяется всяческим формальностям), чаще приводят к успешному завершению проекта, нежели тяжелые методологии, где формальности играют очень большую роль (случайные исключения в нашем списке составляют только Cleanroom и PSP/TSP). Конечно, плохой руководитель - весьма существенный фактор, который сильно влияет на весь ход работ, однако его нельзя отнести к методологии. Впрочем, даже если учитывать и качество руководства проектом, все равно достоверных прогнозов не получится.

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

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


Валентин Викторович Красник | Общие положения

Четверг, 13 Января 2011 г. 00:18 + в цитатник

Вопрос 15. На какие группы в соответствии с принятой структурой в организации подразделяется персонал, эксплуатирующий тепловые энергоустановки?

Ответ. Подразделяется на:

руководящих работников;

руководителей структурного подразделения;

управленческий персонал и специалистов;

оперативных руководителей, оперативный и оперативно-ремонтный персонал;

ремонтный персонал (п. 2.3.2).

Вопрос 16. Какую подготовку проходит персонал организации до допуска к самостоятельной работе или переходе на другую работу (должность), связанную с эксплуатацией тепловых энергоустановок, а также при перерыве в работе по специальности свыше 6 мес.?

Ответ. Проходит подготовку по новой должности (п. 2.3.3).

Вопрос 17. Что предусматривает программа производственного обучения по новой должности?

Ответ. Предусматривает:

изучение настоящих правил и нормативно-технических документов по эксплуатации тепловых энергоустановок;

изучение правил безопасности и других специальных правил, если это требуется для выполнения работы;

изучение должностных, эксплуатационных инструкций и инструкций по охране труда, планов (инструкций) ликвидации аварий, аварийных режимов;

изучение устройства и принципов действия технических средств безопасности, средств противоаварийной защиты;

изучение устройства и принципов действия оборудования, контрольно-измерительных приборов и средств управления;

изучение технологических схем и процессов;

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

приобретение практических навыков управления тепловыми энергоустановками (на тренажерах и других технических средствах обучения) (п. 2.3.5).

Вопрос 18. Кто определяет необходимый уровень квалификации персонала организации?

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

Вопрос 19. Каковы обязательные формы работы с различными категориями работников?

Ответ. Обязательные формы работы следующие:

с руководящими работниками организации:

вводный инструктаж по безопасности труда;

проверка органами госэнергонадзора знаний правил, норм по охране труда, правил технической эксплуатации, пожарной безопасности (п. 2.3.8.1);

с руководителем структурного подразделения: вводный и целевой инструктажи по безопасности труда; проверка органами госэнергонадзора знаний правил, норм по охране труда, правил технической эксплуатации, пожарной безопасности (п. 2.3.8.2);

с управленческим персоналом и специалистами:

вводный и целевой инструктажи по безопасности труда;

проверка знаний правил, норм по охране труда, правил технической эксплуатации, пожарной безопасности;

пожарно-технический минимум (п. 2.3.8.3);

с оперативными руководителями, оперативным и оперативно-ремонтным персоналом:

вводный, первичный на рабочем месте, повторный, внеплановый и целевой инструктажи по безопасности труда, а также инструктаж по пожарной эксплуатации;

подготовка по новой должности или профессии с обучением на рабочем месте (стажировка);

проверка знаний правил, норм по охране труда, правил технической эксплуатации, пожарной безопасности;

дублирование; специальная подготовка;

контрольные противоаварийные и противопожарные тренировки (п. 2.3.8.4);

с ремонтным персоналом:

вводный, первичный на рабочем месте, повторный, внеплановый и целевой инструктажи по безопасности труда, а также инструктаж по пожарной эксплуатации;

подготовка по новой должности или профессии с обучением на рабочем месте (стажировка);

проверка знаний правил, норм по охране труда, правил технической эксплуатации (п. 2.3.8.5).


В. В. Мельниченко. Siemens Data Suite

Четверг, 13 Января 2011 г. 00:18 + в цитатник

Несомненно, стоит упомянуть программу для мобильных телефонов Siemens. Здесь тоже нет ничего необычного, за исключением того, что программа с одним и тем же названием может быть рассчитана лишь на конкретные модели телефонов. Поэтому прежде чем выкачивать программу с незнакомого сайта, обязательно прочтите описание. Если же вы получили программу в комплекте с мобильным телефоном, то, скорее всего, она без проблем подойдет для работы с вашим телефоном.

После того как программа будет установлена и телефон будет обнаружен, вы получите возможность редактировать записную книгу, отправлять SMS-сообщения, подключаться, к Интернет. Естественно, при подключении вы сможете редактировать имеющиеся в телефоне мелодии и картинки или добавлять новые.

Конечно же, программа не сможет полностью получить все настройки телефона, особенно введенные пользователем. Поэтому, чтобы работать с Интернет или отправлять сообщения, вам придется настраивать профили соединения или же указывать Номер сервисного центра. Кроме того, если обратиться к кнопке Настройки, то можно заново перенастроить порты для соединения или указать другие параметры конфигурации.

Если же вам надоело набирать SMS на клавиатуре телефона и хочется более полноценной работы, то перейдите к Программе передачи сообщений. После чего левая часть интерфейса рабочей программы примет вид проводника операционной системы (см. рис. 13.2, справа). В виде дерева будет представлена вся структура SMS-сообщений, которые имеются в вашем мобильном телефоне.

Таким же образом переключаясь между функциями, вы можете отредактировать картинки и мелодии или же добавить новые и удалить старые.

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

Рис. 13.2. Siemens Data Suite для редактирования адресной книги телефона и компьютера

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


А. Алексашин / Принцип "модель-визуальное представление-контроллер»

Понедельник, 29 Ноября 2010 г. 22:26 + в цитатник

Предположим, что есть приложение – электронная таблица. В дополнение к числам, расположенным в самой таблице, также имеется график, отображающий числа на гистограмме и диалоговое окно суммы с накоплением, отображающим сумму чисел в некотором столбце таблицы.


Служба событий CORBA

Служба событий CORBA позволяет объектам-участникам отправлять и получать уведомления о событиях через общую шину, так называемый канал событий. Канал событий принимает решение по обработке событий, а также осуществляет разделение производителей и потребителей событий. Он работает в двух основных режимах: «проталкивание» и "вытягивание".

В режиме «проталкивания» поставщики событий информируют канал событий о том, что событие произошло. Затем канал автоматически распространяет это событие ко всем объектам-клиентам, которые зарегистрировались, выражая свой интерес.

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

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


Очевидно, мы не хотим иметь три отдельных копии одних и тех же данных. Поэтому мы создаем модель – сами данные и обычные операции для их обработки. Затем мы можем создать отдельные визуальные представления, которые отображают данные различными способами: в виде электронной таблицы, графика или поля суммы с накоплением. Каждое из этих визуальных представлений может располагать собственными контроллерами. Например, график может располагать неким контроллером, позволяющим приближать и отдалять объекты, осуществлять панорамирование относительно данных. Ни одно из этих средств не оказывает влияния на данные, только на это представление.

Это и является ключевым принципом, на котором основана парадигма "модель-визуальное представление-контроллер": отделение модели от графического интерфейса, ее представляющего, и средств управления визуальным представлением [35].

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


Подсказка 42: Отделяйте визуальные представления от моделей


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

Java: древовидное визуальное представление

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

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

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

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

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

Теперь можете капризничать и начать использовать классы средств просмотра; вы можете изменять представление узлов и использовать специальные пиктограммы, шрифты или цвета. Когда вице-президент вернется к вам и скажет, что новые корпоративные стандарты требуют использования для некоторых служащих пиктограммы "Веселый Роджер", то вы можете внести изменения в TreeCellRenderer, не затрагивая другие программы.


Object Pascal и Windows API | Автор неизвестен - Компьютеры

Понедельник, 29 Ноября 2010 г. 22:26 + в цитатник

1. Можно ли использовать OWL в Delphi?

Можно, если уже существуют свои разработки с использованием OWL. Однако следует обратить внимание, не используются ли слова class, try, except и ряда других — в Delphi они являются зарезервированными. Если же опыта использования OWL не было, то вряд ли имеет смысл использование этой библиотеки — в Delphi существуют свои, более удобные средства для работы с Windows.

Компиляция приложений, написанных на BP7 с использованием OWL.

Компилятор Delphi способен компилировать приложения, написанные на OWL Borland Pascal 7.0. Для компиляции таких приложений в среде Delphi необходимо сделать следующее:

1. Откройте главный файл приложения пунктом меню File|Open Project

2. Добавьте в список используемых модулей uses модуль Messages в тех файлах, где использовался модуль WinTypes. Модуль Messages должен быть указан ранее модуля OWindows, ODialogs или любого другого OWL-модуля.

3. При помощи пункта меню Options|Project Dialog добавьте путь x:\DELPHI\SOURCE\RTL70 к пути поиска модулей данного проекта. Этот каталог должен содержать файлы OWL, измененные для компиляции в Delphi.

Если Вы забыли указать использование модуля Messages, то Вы при компиляции получите сообщение 'Unknown identifier'. Указание Messages после модуля OWindows вызовет сообщение 'Header does not match previous definition'.

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

Изменилась реализация StrDispose. Если Вы распределяете память для строки при помощи GetMem, то освобождение этой области памяти при помощи StrDispose вызовет ошибку выполнения 'Runtime error 203'. Для распределения памяти для строк следует использовать функции StrAlloc или StrNew. Объекты OWL не ориентированы на обработку исключительных ситуаций, т.е. при возникновении таких ситуаций не происходит отката инициализации объектов. Мы не рекомендуем использование исключения в приложениях с OWL.

Компилятор теперь производит поиск модулей, ресурсов и OBJ файлов по пути, указываемому в каталогах OPTIONS|Project. Путь 'EXE and TPU directory' больше не поддерживается. EXE-файлы могут создаваться в 'Output directory', а файлы DCU всегда создаются в том каталоге, где находятся соответствующие файлы PAS. Новые модули WinTypes и Messages могут быть скомпилированы BP7. Для этого не требуется включения дополнительных директив $IFDEF (зато там есть $IFDEF WIN32;).


2. Как можно зааллокировать блоки памяти больше, чем 64 Кбайт?

Используйте GlobalAlloc и GlobalLock из модуля WinProcs.


3. GPF в ToolHelp.DLL в Win-OS/2 2.1.

Поставьте FixPack, или сделайте Upgrade на OS/2 Warp 3 FullPack.


4. Как получить из Clipboard текст большого размера?

Да, стандартный метод TClipboard.AsText ограничивает текст размером строки - 255 байт. Для получения текста длиной более 255 байт можно использовать, например следующую процедуру:

procedure GetLargeText: PChar

var

  Buffer: PChar;

  MyHandle: THandle;

  TextLength : Integer;

begin

  MyHandle := Clipboard.GetAsHandle(CF_TEXT);

  Buffer := GlobalLock(MyHandle);

  try

    Result := nil;

    if Buffer <> nil then

    begin

    { теперь у нас данные типа PChar -> мы можем работать

      с ними как с обычной Null-terminated строкой }

      TextLength := StrLen(Buffer);

      GetMem(Result, TextLength+1);

      StrCopy(Buffer, Result);

    end;

  finally

    GlobalUnlock(MyHandle);

  end;

end;


5. Проблемы Delphi с WinG.

Я слышал, что у Delphi проблемы с WinG, однако кто-то их решил?

Да, Майк Скотт (Mike Scott, 100140.2420@compuserve.com) даже написал коммерческий вариант VCL-компонентов, использующих WinG для Delphi:

WinG Sprite Kit.

Набор компонентов, осуществляющих доступ к WinG из Delphi. Включает компоненты TWinGCanvas для рисования TWinGDC и TWinGBitmap, TWinGSurface, которые можно поместить на форму и спрайтовый компонент, который можно помещать на них.

$99 EEP

Существует статья по использованию WinG в Borland Pascal — #5 Pascal Magazine. Обзор VCL WinG появится в новом Delphi Magazine. Отошлите письмо с вашим почтовым адресом на 70630.717@compuserve.com для получения бесплатной копии этих журналов (наверняка из России это не сработает.


А. Г. Сивак, Самоописание

Понедельник, 29 Ноября 2010 г. 22:26 + в цитатник

Компоновочные блоки считаются единицами с частичным самоописанием, поскольку в них содержится информация о внешних компоновочных блоках, необходимых для правильного функционирования компоновочного блока. Так что если вашему компоновочному блоку требуются System.Windows.Forms.dll и System. Drawing.dll, то информация о них будет записана в манифест компоновочного блока. Вспомните из главы 1, что манифест – это блок метаданных, описывающих сам компоновочный блок (имя, версия, информация о внешних компоновочных блоках и т.д.).

Кроме данных манифеста, компоновочный блок содержит метаданные, описывающие структуру каждого содержащегося типа (имена членов, реализуемые интерфейсы, базовые классы, конструкторы и т.д.). И поскольку компоновочный блок документируется настолько "красноречиво", среда CLR не обращается к реестру системы Win32 для выяснения размещения компоновочного блока (что принципиально отличается от предлагавшейся ранее Microsoft модели программирования COM). Из этой главы вы узнаете, что среда CLR использует совершенно новую схему получения информации о размещении внешних библиотек программного кода.


Усовершенствование корабля Apollo - Иван Иванович Шунейко

Четверг, 25 Ноября 2010 г. 01:49 + в цитатник

После аварии с космическим кораблем Apollo-13 NASA провел усовершенствование служебного отсека, заключавшееся в следующем.

1. Установлен дополнительный кислородный бак в секции № 1 служебного отсека. Это позволит астронавтам в случае аварии, подобной происшедшей с Apollo-13, не пользоваться при возвращении к Земле бортовыми системами лунного корабля. Кроме того установка дополнительного кислородного бака позволяет обойтись без вентиляторов, в цепи которых произошло короткое замыкание, вызвавшее взрыв кислородного бака на Ароllо-13.

2. В секции № 4 установлен дополнительный аварийный серебряно-цинковый аккумулятор емкостью 400 а·ч весом 61,2 кг. В случае выхода из строя топливных элементов емкости аккумулятора должно хватить для питания систем основного блока в течение 3 сут, требуемых для возвращения от Луны к Земле.

3. Установлена дополнительная канистра с питьевой водой емкостью 9 кг.

4. Кроме перечисленных дополнений по рекомендации аварийной комиссии заменена тефлоновая изоляция электропроводки к кислородным бакам, и проводка, находящаяся в контакте с кислородом, помещена в стальной кожух; вместо двух нагревателей по 75 вт установлено 3 по 50 вт питаемых от двух независимых электроцепей; в каждом кислородном баке дополнительно установлен датчик температуры; модифицированы термостаты, которые должны отключать нагреватели при температуре 27°C; измерители уровня из алюминия заменены измерителями из материала, не горящего в атмосфере кислорода; заменены все материалы в кислородных баках, могущие гореть в атмосфере кислорода, установлена бортовая система сигнализаций, предупреждающая экипаж об угрозе аварийной ситуации, подобно происшедшей на Apollo-13.

Установка дополнительного оборудования и изменения, внесенные в конструкцию, увеличили вес корабля Apollo на 227 кг; если на корабль дополнительно устанавливается луноход, весом 182 кг, то общий вес полезной нагрузки становится близким к предельному для энергетических возможностей ракеты-носителя Saturn V.


Алексей Садовский. Экран

Четверг, 25 Ноября 2010 г. 01:49 + в цитатник

Практически всю почти 30-летнюю историю в ноутбуках использовались экраны на жидких кристаллах (такие экраны еще называют основанными на TFT-матрицах). Это необходимо для максимального уменьшения размеров компьютера. Однако если раньше главной целью ноутбука было «хотя бы показывать», то теперь он должен показывать как можно лучше. Рассмотрим несколько наиболее важных характеристик экранов.

• Время отклика. Обозначает скорость переключения жидких кристаллов с одного цвета на другой. Чем она выше, тем лучше (то есть время отклика 8 мс лучше, чем 16 мс). Наверное, вы не раз видели тянущийся шлейф за мышью или небольшое размазывание окна при его перетаскивании на жидкокристаллическом мониторе. Это и есть следствие долгого времени отклика. Современные экраны обладают высокой скоростью переключения. Да и при работе время отклика не имеет принципиального значения. Отклик очень важен, когда на экране происходит быстрое движение. А подобное можно наблюдать чаще всего в играх.

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

• Углы обзора. Наверное, многие видели, что, смотря со стороны, на жидкокристаллическом экране ничего не различить. Однако картинка появляется, если стать перпендикулярно монитору. У современных экранов углы обзора в целом весьма неплохие: даже при очень сильном отклонении хоть что-то видно. Но в зависимости от типа матрицы эффект плохих углов обзора может проявляться по-разному.

• Разрешение. Обозначает число точек, умещающихся на экране, и обычно зависит от диагонали. Необходимо выбрать оптимальное разрешение. Если этот параметр будет слишком большим, то вам будет сложно читать текст на экране. Если же разрешение маленькое, то на экране все будет слишком большим. Дам несколько практических советов. Для диагоналей 13 и 14” оптимальным является разрешение 1280 ? 800, для 15” – 1280 ? 800 или 1440 ? 900, а для 17” – 1440 ? 900 или 1680 ? 1050.

Прежде чем перейти к описанию типов жидкокристаллических экранов, остановимся на соотношении сторон. Сегодня большинство ЭЛТ-мониторов к настольным компьютерам выпускаются с соотношением 4:3. Ранее это касалось и ноутбуков. Со временем производители обратили внимание на широкоформатный форм-фактор – соотношение 16:10. В этом случае на экране появляется больше места по ширине. Таким образом, использовать их довольно удобно. Неудивительно, что сегодня ноутбуки выпускаются в основном с таким соотношением сторон.

Всего существует три вида TFT-матриц, которые используются в жидко кристаллических мониторах: TN+Film, MVA и S-IPS. Среди настольных экранов наиболее распространен первый тип, что обусловлено низкой стоимостью по сравнению с остальными видами, а также низким заявленным временем отклика. К основным недостаткам такой матрицы можно отнести следующие: плохую цветопередачу, плохие углы обзора по вертикали и горизонтали, невысокие показатели контрастности. Отличить такой тип матрицы достаточно просто: при взгляде сверху низ экрана выцветает и приобретает бледно-желтый оттенок, тогда как верх становится темнее. То же самое и сбоку: если сильно отклониться в сторону, противоположная сторона приобретет желтый оттенок.

Матрица типа MVA встречается реже. Тем не менее ее применяют в ноутбуках. Обычно экран, построенный на базе этой матрицы, обладает довольно неплохой цветопередачей, а также контрастностью и углами обзора. Из ее недостатков можно назвать довольно большое время отклика. Впрочем, если вы собираетесь работать на ноутбуке в офисных приложениях, где изображение в основном статично (а не играть в игры), MVA станет весьма неплохим выбором.

Примечание

Существует еще один тип матрицы, основанный на технологии MVA. Он носит название PVA. Его разработчиком является компания Samsung, которая оснащает свои ноутбуки этим типом. От оригинальной версии PVA отличается такими возможностями, как более низкий отклик и улучшенные показатели контрастности.

S-IPS, или Super IPS, представляет собой усовершенствованную матрицу на базе IPS. Этот тип создавался с целью устранить такие недостатки TN+Film, как плохие углы обзора и плохая цветопередача. Следует отметить, что разработчикам это удалось. Современные S-IPS с откликом 16 мс признаются чуть ли не самыми быстрыми. Все дело в том, что у них заявленное время отклика мало отличается от реального, чего нельзя сказать об TN и MVA. Неудивительно, что именно этот тип сегодня применяется в профессиональных жидкокристаллических мониторах. Тем не менее ничто не мешает использовать его и в ноутбуках.

Из недостатков S-IPS можно назвать лишь не очень хорошую контрастность, которая обычно сравнима с контрастностью TN+Film. Таким образом, можно утверждать, что это наиболее предпочтительный тип матрицы.


Функции execv () | H. M. Ручко

Четверг, 18 Ноября 2010 г. 01:14 + в цитатник

Функции execv(), execve() и execvp() передают аргументы командной строки в векторе указателей на строки с завершающим нулевым символом. Количество аргументов командной строки должно быть известно во время компиляции. Элемент argv[0] обычно представляет собой команду.

• int execv(const char *path,char *const arg[]);

Здесь path — путевое имя выполняемой программы. Его можно задать в виде полного составного имени либо относительного составного имени из текущего каталога. Последующий параметр представляет вектор (с завершающим нулевым символом), содержащий аргументы командной строки, представленные в виде строк с завершающими нулевыми символами. Всего может быть n аргументов. Этот вектор завершается NULL-указателем. Элементу arg[] можно присвоить значение таким образом:

char *const arg[] = {«traverse»,".», ">",«1000»,NULL};


Вот пример вызова этой функции:

execv(«traverse», arg) ;

В этом случае утилита traverse перечислит все файлы в текущем каталоге, размер которых превышает 1000 байт.

• int execve(const char *path,char *const arg[],char *const envp[]);

Эта функция аналогична функции execv(), с одним отличием: она имеет дополнительный параметр, envp[], который описан выше.

• int execvp(const char *file,char *const arg[]);

Здесь file — имя выполняемой программы. Последующий параметр представляет собой вектор (с завершающим нулевым символом), содержащий аргументы командной строки, представленные в виде строк с завершающими нулевыми символами. Всего может быть n аргументов. Этот вектор завершается NULL-указателем.

Вот примеры применения синтаксиса функций execv () с различными аргументами:

char *const arg[] = {«traverse»,".», ">",«1000»,NULL};

char *const envp[] = {«files=50»,NULL};

execv("/path/traverse», arg);

execve("/path/traverse», arg, envp);

execvp(«traverse», arg);

Здесь в каждом примере вызова execv-функции активизированный процесс выполняет программу traverse.


Сергей Акимович Яремчук, Музыкальные проигрыватели

Четверг, 18 Ноября 2010 г. 01:14 + в цитатник

Большая часть программ, о которых говорилось выше, без проблем воспроизводят музыкальные файлы и диски, однако удобнее использовать специальные приложения и утилиты для этих целей. Здесь, как и в случае с видео, выбор очень широк. Поиск в репозитарии по запросу sudo apt-cache search sound выдаст большое количество приложений. Так, на слабых компьютерах (начиная от процессора i486) для воспроизведения MP3 можно использовать консольную утилиту mpg123 (http://www.mpg123.org/) или ее аналог mpg 321 (http://mpg321.depooter.org/project/). Достаточно перейти в каталог, в котором находятся такие файлы, и выполнить команду mpg123 ./*.mp3. Все файлы, находящиеся в нем, будут воспроизведены. Несмотря на кажущуюся простоту, это мощные утилиты. Кстати, многие проигрыватели, в том числе и Winamp, используют mpg123 для воспроизведения MP3-файлов. Для файлов Ogg Vorbis есть аналогичная утилита – ogg123. Существуют консольные утилиты, имеющие псевдографический интерфейс. Например, mp3blaster (http://mp3blaster.sourceforge.net/), диалоговая программа с простым интерфейсом (рис. 3.8), умеющая воспроизводить аудиофайлы не только формата MP3, но и Ogg Vorbis, WAV и SID.

Рис. 3.8. Окно mp3blaster


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

В качестве альтернативы mp3blaster могут выступать playmp3list (сайт http://rucus.ru.ac.za/~urban/projects/playmp3list/) или MOC (Music On Console, http://moc.daper.net/), являющиеся неплохими консольными фронтэндами для mpg123. Проигрывателю PyTone (http://www.luga.de/pytone/) достаточно указать каталог, в котором находятся музыкальные файлы. Он просканирует коллекцию, и пользователь сможет быстро составить плейлист. Поддерживается большое количество горячих клавиш, поэтому пользоваться программой просто, имеется также поиск мелодий, вывод информации в ID3-теге и изменение скорости воспроизведения.

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


Глава 16 Установка и удаление программ. Алексей Садовский

Четверг, 18 Ноября 2010 г. 01:14 + в цитатник

• Установка программ

• Удаление программ

• Обновления операционной системы


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

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

Прикладные программы, как правило, написаны третьими разработчиками для какой-либо операционной системы. Они позволяют значительно расширить функциональность операционной системы. Откровенно говоря, «голая» операционная система с программами, созданными ее же разработчиками[32], не может рассматриваться как основа полноценного рабочего места. По большому счету, операционная система – это оболочка для других программ, обеспечивающая их функционирование. Чем больше разработчиков занимается написанием ПО для операционной системы, тем последняя популярнее и функциональнее.

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

В первую очередь нужно научиться устанавливать программы. Ведь прежде, чем включить какое-либо приложение и начать работать, как правило, требуется его проинсталлировать[33]. Кроме того, необходимо уметь правильно удалять программы. Конечно, их можно стереть как обычный файл (о работе с файлами и папками рассказывается в гл. 11), но лучше этого не делать.

При установке приложение записывает свои файлы во множество папок, а также в реестр[34], поэтому удаление папки не является полным удалением с жесткого диска. В системе останется множество связей, которые впоследствии могут отрицательным образом сказаться на функционировании операционной системы вообще и других программ в частности.


Что значит имя: брэнд и имидж / Энтони Вламис

Суббота, 06 Ноября 2010 г. 19:54 + в цитатник

Yahoo! обладает целью, фокусом и последовательной индивидуальностью с самых ранних дней своего существования. Название Yahoo! – не случайность. Оно было выбрано намеренно. Что же означает Yahoo!?

Считается, что Yahoo! – анаграмма от Yet Another Highly Officious Oracle (т. е. Еще Один Очень Исполнительный Посредник), но Янг и Фило говорят, что они выбрали это название, найдя его в словаре. Тим Кугл в своем интервью прокомментировал: «Джерри и Дэвид искали имя для компании… яркий брэнд. Отец Дэвида называл его Yahoo, когда тот был еще ребенком и жил в Луизиане. Янг и Фило посмотрели в словарь и нашли значение – „буйная шайка хулиганов“. Они решили, что это значение Yahoo отлично характеризует их самих, оно остроумное и запоминающееся, и они выбрали его» (CNNFn, 15 января 1998 года). А что касается восклицательного знака, Янг говорит, что это был «просто рекламный трюк».

В действительности же Yahoo! – больше, чем просто название. Оно стало обозначением некоего «крутого» места в Интернете, куда стоит заглянуть. Крутое имя для крутого нового посредника. И сейчас оно все еще обозначает саму компанию и является именем портала.

Имя было настолько важной составляющей, что даже влияло на решение Янга, Фило и их партнера Майкла Морица из Sequoia Capital, когда они проводили интервью с кандидатами на должность главного администратора. Одного кандидата они вычеркнули только из-за его слов, что первым делом он сменил бы название компании.


Микрофишки. Журнал «Компьютерра»

Суббота, 06 Ноября 2010 г. 19:54 + в цитатник

Американская Служба честной торговли (Office of Fair Trading) недавно обязала американскую же компанию Micro Bill Systems изменить поведение программы, предназначенной для работы с ее веб-сайтом. По мнению службы, то, как приложение функционирует, грубо нарушает права потребителей.

Micro Bill Systems предоставляет пользователям доступ к контенту "для взрослых". И подобно многим другим таким сайтам выводит на экран пользователя всплывающие окошки (pop-up). Даже те пользователи Интернета, которые на подобные сайты не заходят, окна эти люто ненавидят. Приятного в них действительно мало, даже если они ведут себя "по-божески". Чего не скажешь про сайт Micro Bill Systems. По мнению защитников прав потребителей, нехорошо это - когда такие окошки заполняют весь экран и компьютером становится просто невозможно пользоваться. Вдобавок при загрузке программы, ответственной за их показ, пользователю не сообщалось, что она, собственно, делает и как ее удалить. Правда, те уступки, на которые пришлось пойти Micro Bill Systems, все равно выглядят издевательством: количество всплывающих окон ограничено "всего" двадцатью в сутки на каждого посетителя, и на экране они должны оставаться не дольше одной минуты. Но надо же с чего-то начинать… ПП


***

Компания Yahoo объявила о том, что отныне платные пользователи Flickr наряду с фотографиями смогут загружать и видеоролики. По словам администрации фотосайта, новая функция не будет конкурировать с YouTube и собственным видеохостингом Yahoo (video.yahoo.com). Загружаемые клипы должны быть не длиннее 90 секунд и не "тяжелее" 150 Мбайт. При таких ограничениях, по мнению руководства сервиса, видео воспринимается просто как "длинная фотография". Кроме того, столь малое время проигрывания должно послужить гарантией, что на новом сервисе не появится пиратский ТВ-контент. ЕВ


***

Удачные путешествия марсианских роверов вдохновили NASA на смену парадигмы освоения Луны. Если прежде никто не подвергал сомнению необходимость стационарной базы для лунных поселенцев и споры велись в основном о ее местонахождении, то теперь, возможно, об оседлой лунной жизни придется забыть. Разработка инженеров NASA - "жилой" робот-исследователь ATHLETE (All-Terrain Hex-Legged Extra-Terrestrial Explorer), прототип которого сейчас испытывается близ Пасадены, штат Калифорния. Многотонная машина, питаемая солнечными батареями, сможет передвигаться по лунной поверхности с крейсерской скоростью 10 км/час, неся на себе пристанище для людей.

Шесть ног "Атлета" заканчиваются колесами, которые будут использоваться при передвижении по относительно ровной поверхности, а по пересеченной местности робот пойдет как гигантское насекомое, переступая конечностями. Мало того, конечности, снабженные различными насадками, смогут использоваться как рабочий инструмент. Такой помощник будет очень кстати селенологам. Машиной сможет управлять экипаж, а если понадобится привлечь его к другим делам - управление будет осуществляться с Земли, благо программное обеспечение для этого уже отлажено в более трудных условиях - на Марсе. ИП



Торпедные лодки типа Nazario Sauro, Ю. И. Александров

Суббота, 06 Ноября 2010 г. 19:53 + в цитатник

Основные ТТХ

Водоизмещение, т:

- надводное,…1442

- подводное…1637

Длина наибольшая, м…63,9

Ширина корпуса наибольшая, м…6,8

Осадка средняя, м…5,7

Запас плавучести, %…13.5

Архитектурно-конструктивный тип…однокорпусная

Глубина погружения оперативная, м…250

Автономность, сут…35

Экипаж, чел… 49 (7 офицеров)

Энергетическая установка:

- тип…ДЭУ с полным

электродвижением

- число х мощность (тип) ДГ кВт…3 х 720 (GMT А210 16NM)

- число х мощность (тип)

дизелей в составе ДГ л.с…3 х 1070 (GMT)

- число х мощность ГЭД, л. с…1 х 4200/3650*

- число гребных валов…1

- число групп АБ х число

элементов в группе…2 х 148

Скорость полного хода, уз:

- надводная…11

- подводная…19,3

- в режиме РДП…12

Дальность плавания (при скорости хода, уз), мили

- надводная…6150 (11)

- в режиме РДП…2500 (12)

- подводная…250 (4)

или 19,3(19)

Вооружение

Торпедное:

- число х калибр ТА, мм…6 х 533

- боезапас торпед…12

- тип торпед…ф "Whitehead тип А-184"

- число и тип мин,

принимаемых взамен торпед…24 VSSM 600

Радиоэлектронное: -тип системы управления

оружием…SMASACTIS-BSN-716(V) 1

- тип ГАК…AESN IPD-70S, в составе:

ГАС пассивного определения дистанции типа AESN MD 100S; ГАС ОГС типа "Velox М5"

- тип РЛС…SMABPS-704 (навигац),

"Electronica BLD-727" (СОРС)

- тип перископов…ф. "Pilkington Optronics":

СК 31 (поисковый); СН 8 (атаки)

ПЛ типа Nazario Sauro представляют собой вторую, после окончания Второй мировой войны, серию итальянских ДПЛ. (Первая серия - 4 ед. типа Enrico Toti водоизмещением 524/582 т, вошедшие в строй в 1968-69 гг.). ПЛ предназначались для действий в прибрежных районах. ПЛ S 518 и S 519 были впервые заказаны в 1967 г, но затем заказ был ликвидирован и вновь выдан в 1972 г. ПЛ S 520 и S 527 были заказаны

* Мощность форсажная/продолжительная

в 1976 г. Задержка в сроках сдачи первых 2-х ПЛ была вызвана тем, что на S 518 и S 519 пришлось сменить АБ на АБ ф. CGA, удовлетворивших требования флота.

Все ПЛ типа Sauro прошли модернизацию: S 579 - в 1990 г., S 518-в 1991 г., S 521 - в 1992 г. и S 520-в 1993 г. Были установлены АБ большей емкости, заменено вспомогательное оборудование и улучшены условия обитаемости. На ПЛ S 518Nazario Sauro прошли испытания ГАС с ГПБА ф. "Thomson-Sintra" и новые системы управления оружием.

Конструкция ПЛ - однокорпусная, с надстройкой и килевой наделкой в средней части. ПК изготовлен из стали HY-80, межотсечными переборками делится на 6 отсеков. Концевые переборки ПК-сферические.

Для выхода из аварийной ДПЛ в носовой и кормовой оконечностях предусмотрены спасательные люки.

На 4-ой ПЛ и ПЛ последующей подсерии "улучшенный Sauro" установлена цистерна быстрого погружения.

Управление торпедной стрельбой по первоначальному проекту осуществлялось с помощью СУ CCRG, позволявшей одновременно следить за 4 целями и связанной со всеми средствами обнаружения, аппаратурой РЭП и оружием.

В ходе модернизаций на всех ПЛ была установлена АСБУ SMA SACTICS-BSN-716 (V) 1, позволяющая следить одновременно за 30 целями.

Торпедная ПЛ Garlo Fecia Di Cassato



Пример: преобразование файла с использованием расширенного ввода / А. Г. Гузикевич / вывода

Среда, 03 Ноября 2010 г. 00:41 + в цитатник

Программа 14.3 (atouEX) представляет собой переработанную версию программы 14.1. Эти программы иллюстрируют различие между двумя методами асинхронного ввода/вывода. Программа atouEx аналогична программе 14.1, но большая часть кода, предназначенного для упорядочения ресурсов, перемещена в ней в процедуру завершения, а многие переменные сделаны глобальными, чтобы процедура завершения могла иметь к ним доступ. Вместе с тем, в приложении В показано, что в отношении быстродействия программа atouEx вполне может конкурировать с другими методами, в которых не используется отображение файлов, тогда как программа atouOV работает медленнее. 

Программа 14.2. atouEx: преобразование файла с использованием расширенного ввода/вывода

/* Глава 14. atouEX

   Преобразование файла из ASCII в Unicode средствами РАСШИРЕННОГО ВВОДА/ВЫВОДА. */

/* atouEX файл1 файл2 */


#include "EvryThng.h"

#define MAX_OVRLP 4

#define REC_SIZE 8096 /* Размер блока не имеет столь важного значения в отношении производительности, как в случае atouOV. */

#define UREC_SIZE 2 * REC_SIZE


static VOID WINAPI ReadDone(DWORD, DWORD, LPOVERLAPPED);

static VOID WINAPI WriteDone(DWORD, DWORD, LPOVERLAPPED);


/* Первая структура OVERLAPPED предназначена для чтения, а вторая — для записи. Структуры и буферы распределяются для каждой предстоящей операции. */

OVERLAPPED OverLapIn[MAX_OVRLP], OverLapOut [MAX_OVRLP];

CHAR AsRec[MAX_OVRLP][REC_SIZE];

WCHAR UnRec[MAX_OVRLP][REC_SIZE];

HANDLE hInputFile, hOutputFile;

LONGLONG nRecord, nDone;

LARGE_INTEGER FileSize;


int _tmain(int argc, LPTSTR argv[]) {

 DWORD ic;

 LARGE_INTEGER CurPosIn;

 hInputFile = CreateFile(argv[1], GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);

 hOutputFile = CreateFile(argv[2], GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_FLAG_OVERLAPPED, NULL);

 FileSize.LowPart = GetFileSize(hInputFile, &FileSize.HighPart);

 nRecord = FileSize.QuadPart / REC_SIZE;

 if ((FileSize.QuadPart % REC_SIZE) != 0) nRecord++;

 CurPosIn.QuadPart = 0;

 for (ic = 0; ic < MAX_OVRLP; ic++) {

  OverLapIn[ic].hEvent = (HANDLE)ic; /* Перегрузить событие. */

  OverLapOut[ic].hEvent = (HANDLE)ic; /* Поля. */

  OverLapIn[ic].Offset = CurPosIn.LowPart;

  OverLapIn[ic].OffsetHigh = CurPosIn.HighPart;

  if (CurPosIn.QuadPart < FileSize.QuadPart) ReadFileEx(hInputFile, AsRec[ic], REC_SIZE, &OverLapIn [ic], ReadDone);

  CurPosIn.QuadPart += (LONGLONG)REC_SIZE;

 }

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

 nDone = 0; 

 while (nDone < 2 * nRecord) SleepEx(INFINITE, TRUE);

 CloseHandle(hInputFile);

 CloseHandle(hOutputFile);

 _tprintf(_T("Преобразование из ASCII в Unicode завершено.\n"));

 return 0;

}


static VOID WINAPI ReadDone(DWORD Code, DWORD nBytes, LPOVERLAPPED pOv) {

 /* Чтение завершено. Преобразовать данные и инициировать запись. */

 LARGE_INTEGER CurPosIn, CurPosOut;

 DWORD ic, i;

 nDone++;

 /* Обработать запись и инициировать операцию записи. */

 ic = (DWORD)(pOv->hEvent);

 CurPosIn.LowPart = OverLapIn[ic].Offset;

 CurPosIn.HighPart = OverLapIn[ic].OffsetHigh;

 CurPosOut.QuadPart = (CurPosIn.QuadPart / REC_SIZE) * UREC_SIZE;

 OverLapOut[ic].Offset = CurPosOut.LowPart;

 OverLapOut[ic].OffsetHigh = CurPosOut.HighPart;

 /* Преобразовать запись из ASCII в Unicode. */

 for (i = 0; i < nBytes; i++) UnRec[ic][i] = AsRec[ic][i];

 WriteFileEx(hOutputFile, UnRec[ic], nBytes*2, &OverLapOut[ic], WriteDone);

 /* Подготовить структуру OVERLAPPED для следующего чтения. */

 CurPosIn.QuadPart += REC_SIZE * (LONGLONG)(MAX_OVRLP);

 OverLapIn[ic].Offset = CurPosIn.LowPart;

 OverLapIn[ic].OffsetHigh = CurPosIn.HighPart;

 return;

}


static VOID WINAPI WriteDone(DWORD Code, DWORD nBytes, LPOVERLAPPED pOv) {

 /* Запись завершена. Инициировать следующую операцию чтения. */

 LARGE_INTECER CurPosIn;

 DWORD ic;

 nDone++;

 ic = (DWORD)(pOv->hEvent);

 CurPosIn.LowPart = OverLapIn[ic].Offset;

 CurPosIn.HighPart = OverLapIn[ic].OffsetHigh;

 if (CurPosIn.QuadPart < FileSize.QuadPart) {

  ReadFileEx(hInputFile, AsRec[ic], REC_SIZE, &OverLapIn[ic], ReadDone);

 }

 return;

}


Георгий Бабат. ЦЕПОЧКА ПОТЕРЬ

Воскресенье, 31 Октября 2010 г. 23:35 + в цитатник

Но мы решили не сдаваться и вместо капитуляции объявили решительную борьбу потерям. Мы завели специальную папку с надписью «потери» и занялись изысканием всех возможных мест «утечки» электроэнергии. Процесс образования и передачи высокочастотной энергии был взят на самый строгий учет.

Много превращений испытывает электроэнергия, прежде чем попадает к мотору тележки ВЧТ.

Переменный ток из силовой сети подается через трансформатор к выпрямителю, который превращает его в ток постоянный. Затем генераторные лампы рубят этот ток на отдельные порции — импульсы, раздробляя его на несколько десятков тысяч импульсов в секунду. Эти импульсы в специальном устройстве, состоящем из катушек и конденсаторов, превращаются в плавные высокочастотные колебания. Высокочастотный ток поступает в бесконтактную тяговую сеть, провода которой насыщают окружающее пространство высокочастотной энергией.

Часть этой энергии воспринимается приемным витком тележки и передается на выпрямитель. От выпрямителя постоянный ток или пульсирующий ток одного направления поступает в тяговый мотор.

Все участки пути, проходимого током, представляют собой как бы звенья одной энергетической цепи. В каждом звене этой длинной цепи неизбежны потери. И от звена к звену потери наращиваются. Для каждого звена можно подсчитать коэффициент полезного действия (КПД), а если перемножить все эти коэффициенты, то получится общий коэффициент полезного действия цепи, величина которого в первой установке была микроскопически мала… 4 процента. Плачевный результат!

От чего же зависит величина КПД энергетической цепи? От чего же зависит мощность, которую может получить приемное устройство тележки? Электротехника говорит, что величина мощности, воспринимаемой тележкой, равна произведению числа перемен тока в одну секунду на величину отдельной порции энергии, отдаваемой проводниками бесконтактной сети.

Частота тока в обычной осветительной сети составляет всего лишь 50 герц, и количество энергии, получаемой тележкой, было бы очень мало; поэтому, чтобы установка могла работать, пришлось повысить частоту в тысячу раз. Однако и при такой высокой частоте КПД был очень низок.

Итак, была объявлена решительная борьба потерям. Мы выяснили, что большая часть потерь происходит в нашей подземной высокочастотной сети. Когда по подземным проводам течет быстропеременный ток, то в земле, вблизи провода, приходят в вихреобразное движение электроны веществ, из которых состоит земля. Вихрь электронов напоминает вихрь пыли, поднятой ветром. Но чтобы привести электроны в движение, затрачивается энергия — та самая энергия, которая могла бы пойти на полезную работу двигателя. Чем больше частота тока, тем больше вихревые потери. Вихревые потери пропорциональны квадрату частоты, то-есть если частоту увеличить в два раза, то вихревые потери возрастут в четыре раза, а если частота возрастет в три раза, то они увеличатся в девять раз.

Но вихревые потери — не единственный вид потерь. Сеть излучает энергию, как антенна радиопередатчика. Потери на излучение пропорциональны четвертой степени частоты тока. Увеличить частоту в два раза — значит повысить эти потери в 16 раз.

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

При очень низких частотах полезная мощность катастрофически мала. Мала она и при очень больших частотах, где большую часть мощности съедают потери.


Модернизация BIOS, Денис Николаевич Колисниченко

Воскресенье, 31 Октября 2010 г. 23:35 + в цитатник

Как уже отмечалось, BIOS – это программное обеспечение, а значит, его можно обновить. Обновление BIOS может понадобиться для поддержки некоторых видов процессоров (например, когда процессор можно физически установить в гнездо на материнской плате, а система распознает его неправильно), для поддержки больших жестких дисков (некоторые старые BIOS не поддерживают жесткие диски более 32 Гб) и т. д.


По поводу обновления версии BIOS нужно отметить следующее:

• просто так обновлять BIOS не нужно – если вас все устраивает (нет каких-либо программно-аппаратных ошибок, все устройства поддерживаются) BIOS трогать не нужно;

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


Где взять новую версию BIOS? Ее нужно искать не на сайте производителя BIOS, а на сайте производителя вашей материнской платы (указан на коробке с материнской платой), поскольку BIOS разрабатывается конкретно под материнскую плату.


Чтобы выбрать правильную версию BIOS, вам нужно знать:

• текущую версию BIOS (выводится при загрузке компьютера); модель материнской платы;

• тип вашего процессора.


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

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


Phoenix – AwardBIOS v6.00PG, AN Energy Star Ally

Copyright (C) 1984–2002, Phoenix Technologies, LTD


Main Processor: Intel Pentium(R) 4 3.06 GHz

Memory testing: 524288K OK


Primary Master: Maxtor 4W060H

Primary Slave: None

Secondary Master: None

Secondary Slave: None


Press DEL to enter SETUP

07/23/2002-i845E-XXXXXX–XXXXXX–ID


Понятно, что сообщения «пролетают» очень быстро, поэтому вы можете нажать кнопку Pause, чтобы успеть прочитать их. В данном случае нас интересует следующая информация:

• производитель и версия BIOS (Phoenix – Award v6.00PG);

• модель материнской платы (XXXXXX–XXXXXX);

• идентификатор BIOS (ID).


Как только вы соберете нужную информацию, отправляйтесь на фирму, где вы покупали компьютер (или материнскую плату), и просите сотрудников фирмы обновить версию вашего BIOS. Да, эта процедура платная. Да, в случае с EEPROM (Flash ROM) ее можно выполнить в домашних условиях, но только если знаешь, что делаешь, поскольку от незнания можно вообще остаться без материнской платы. Поэтому пусть этим занимаются те, кто делает это чуть ли не каждый день, то есть профессионалы.[16]


Я все-таки расскажу, как модернизируется BIOS, но настоятельно не рекомендую проводить ее обновление самостоятельно. Если вы уж решились сделать все своими руками, помните, что вы действуете на свой страх и риск, – потом не нужно писать мне и говорить, что у вас теперь вообще не загружается компьютер! А ведь я предупреждал! Дело в том, что для каждой платы и для каждого BIOS есть свои нюансы. Хорошо, если все пройдет без осложнений.


Итак, для обновления BIOS нужно выполнить следующие действия:

1. Определите модель материнской платы и версии BIOS. Эта информация выводится при загрузке компьютера.

2. Скачайте с сайта производителя материнской платы нужную версию BIOS.

3. Распакуйте полученный архив в какой-нибудь каталог, например в C: \bios.

4. Создайте системную дискету. Для этого зайдите в Мой компьютер, щелкните правой кнопкой на диске А:, выберите команду Форматирование и в появившемся окне установите режим Копировать системные файлы. Затем нажмите кнопку Форматировать (перед этим нужно вставить дискету в дисковод).

5. Перейдите в каталог C: \bios и прочитайте все текстовые файлы – в них обычно описываются действия, которые нужно выполнить при обновлении BIOS. Прочитали? Тогда запишите весь каталог C: \bios на дискету.

6. На всех материнских платах стоит защита от записи BIOS – иначе бы вирусы смогли запросто поселиться там. Иногда такая защита программная (в SETUP нужно выключить опцию защиты, например Flash BIOS Protection), а иногда – аппаратная (нужно особым образом установить определенный джампер на вашей материнской плате). Какая именно защита у вас, я не знаю. Нужно читать руководство по материнской плате. Если у вас его нет, вы можете найти его в Интернете.

7. После снятия защиты можно загрузиться с дискеты. Для этого в SETUP нужно выбрать загрузку с дисковода для гибких дисков (опция First Boot Device – Floppy).

8. После загрузки с дискеты введите команду обновления BIOS. Какую именно? Об этом было написано в тех самых текстовых файлах. Например, для обновления AMI BIOS используется команда amifl827 <файл с BIOS>. Для Award – flash <файл с BIOS>.

9. Внимание! Программа обновления обязательно спросит вас, сохранять или нет старую версию BIOS. Конечно, сохранять!

10. После обновления BIOS перезагрузите компьютер по требованию программы.


Как видите, для обновления BIOS нужно немного знать английский (поскольку вы не прочитаете документацию, которая идет вместе с BIOS) и DOS (Disk Operating System) – без этого тоже никуда не деться. Если вы чего-то не знаете, лучше обратитесь к профессионалам!


Ирина Ремнева / Сканер

Четверг, 28 Октября 2010 г. 14:11 + в цитатник

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

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

Представляет он из себя такой плоский ящичек на ножках, сверху у которого находится крышка. Этой крышкой прижимается тот предмет, который нужно перевести в электронный вид. Под крышкой располагается стекло, на которое предмет кладется. И вот как раз с этого стекла и стоит сдувать пылинки и содержать его в полной чистоте и прозрачности. Для получения хорошего качества файлов. Стеклом сканер не ограничивается. Под ним располагается самое важное – сканирующее устройство. Кто видел, как работает ксерокс, тот найдет много общего и с работой сканера.

Сканеры бывают различного формата, но для дома достаточно, чтобы они сканировали обычный альбомный лист формата А4.

Сканер, как и принтер, к компьютеру можно подключить через параллельный порт или через USB-порт. Догадайтесь с трех раз, какой сканер стоит покупать. Конечно же, тот, который подключается через USB-порт.

Подключать такой сканер так же легко, как и USB-принтер. Находим гнездо USB на системном блоке и подсоединяем.

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

Окно, которое показывает, что система нашла новое оборудование

При этом в правом нижнем углу в командной строке появляется значок:

Значок нового оборудования

Теперь ждем, когда будет запущена программа Мастер обнаружения нового оборудования.

Запустился Мастер обнаружения нового оборудования

Все операции по установке и удалению оборудования на компьютере в Windows осуществляются с помощью этой программы. Для продолжения установки сканера нажмите кнопку Далее. На экране появится новое окно.

Установка драйверов для сканера

В этом окне нужно будет сделать выбор, кто будет вести поиск драйвера конкретно – вы или все же поручите это компьютеру.

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

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

При этом на экране появится новое окошко.

Подскажите системе, где находится драйвер для сканера

Наконец-то система определилась с драйвером

Внизу будет указан драйвер, который будет установлен на компьютере. Нажимаем кнопку ОК.

Если хотите продолжить установку драйвера, жмите Далее

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

По окончании установки система сообщит, что принтер установлен.

Мастер обнаружения нового оборудования закончил свою работу. Жмите Готово

Для завершения работы Мастера установки нового оборудования нажмите кнопку Готово. Ура ! У нас теперь еще и сканер установлен.

Семафоры Posix, размещаемые в памяти. Д. Солнышков

Четверг, 28 Октября 2010 г. 14:11 + в цитатник

Мы измеряем скорость работы семафоров Posix (именованных и размещаемых в памяти). В листинге А.24 приведен текст функции main, а в листинге А.23 — текст функции incr.

Листинг А.23. Увеличение счетчика с использованием семафоров Posix в памяти

//bench/incr_pxsem1.с

37 void *

38 incr(void *arg)

39 {

40  int i;

41  for (i = 0; i < nloop; i++) {

42   Sem_wait(&shared.mutex);

43   shared.counter++;

44   Sem_post(&shared.mutex);

45  }

46  return(NULL);

47 }

Листинг А.24. Функция main для семафоров Posix, размещаемых в памяти

//bench/incr_pxsem1.с

1  #include "unpipc.h"

2  #define MAXNTHREADS 100

3  int nloop;

4  struct {

5   sem_t mutex; /* размещаемый в памяти семафор */

6   long counter;

7  } shared;

8  void *incr(void *);


9  int

10 main(int argc, char **argv)

11 {

12  int i, nthreads;

13  pthread_t tid[MAXNTHREADS];

14  if (argc != 3)

15   err_quit("usage: incr_pxseml <#loops> <#threads>");

16  nloop = atoi(argv[1]);

17  nthreads = min(atoi(argv[2]), MAXNTHREADS);

18  /* инициализация размещаемого в памяти семафора 0 */

19  Sem_init(&shared.mutex, 0, 0);

20  /* создание всех потоков */

21  Set_concurrency(nthreads);

22  for (i = 0; i < nthreads; i++) {

23   Pthread_create(&tid[i], NULL, incr, NULL);

24  }

25  /* запуск таймера и разблокирование семафора */

26  Start_time();

27  Sem_post(&shared.mutex);

28  /* ожидание завершения всех потоков */

29  for (i = 0; i < nthreads; i++) {

30   Pthread_join(tid[i], NULL);

31  }

32  printf("microseconds: %.0f usec\n", Stop_time());

33  if (shared.counter != nloop * nthreads)

34   printf("error: counter = %ld\n", shared.counter);

35  exit(0);

36 }

18-19 Создается семафор, инициализируемый значением 0. Второй аргумент в вызове sem_init, имеющий значение 0, говорит о том, что семафор используется только потоками вызвавшего процесса.

20-27 После создания всех потоков запускается таймер и вызывается функция sem_post.


Елена Юрьевна Логинова. 40. Процесс установления цены на новый товар. Регулирование ценообразования

Четверг, 28 Октября 2010 г. 14:10 + в цитатник

Процесс установления цены относительно сложен и состоит из следующих этапов.

1. Определение целей фирмы и задач ценовой политики.

2. Выявление всех факторов, которые могут влиять на процесс ценообразования.

3. Анализ уровня продаж за определенный период.

4. Определение уровня спроса на перспективу.

5. Оценка всех затрат фирмы.

6. Исследование и анализ цен товаров-конкурентов.

7. Определение метода ценообразования.

8. Выработка ценовой стратегии.

9. Установление конечной цены.

10. Выявление реакции конечных потребителей и фирм-посредников на установленную цену.

Также специалисты по маркетингу должны учитывать психологический фактор:

1) многие потребители воспринимают цену как индикатор качества товара;

2) установление цены с учетом престижности (характерно для дорогих товаров);

3) стратегия неокругленных сумм (например, 100 руб. воспринимается значительно больше 99 руб.).

Регулирование ценообразования.

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

Государство оказывает влияние путем фиксирования цены, ее регулирования с помощью установления «правил игры» при свободных рыночных ценах.

Способы государственного воздействия.

1. Ввод государственных прейскурантных цен.

2. «Заморозка» цен на определенное время.

3. Фиксация цен компаний-монополистов.

4. Установление предельных надбавок к фиксированным ценам.

5. Установление предельного уровня цен на конкретные товары.

6. Установление конкретного уровня разового повышения цен на определенные товары.

В системе свободных рыночных цен государство может:

1) вводить запрет на горизонтальное и вертикальное фиксирование цен;

2) запретить ценовую дискриминацию;

3) запретить демпинговые цены.

Цены также определяются типом рынка: чистая конкуренция, монополистическая конкуренция, олигополия и монополия.

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

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


Выбор монитора | Денис Николаевич Колисниченко

Понедельник, 25 Октября 2010 г. 17:23 + в цитатник

При выборе монитора нужно учитывать следующие технические характеристики:

• время отклика – это минимальное время, за которое ячейка LCD-панели изменяет цвет. У современного монитора время отклика должно быть от 4 до 8 мс. Понятно, что чем меньше, тем лучше. Для офиса, когда вы в основном работаете со статической картинкой (документом), можно купить монитор с большим временем отклика – 8-10 мс, а вот для домашнего использования (ведь дома мы будем играть на компьютере!) нужно выбрать монитор с меньшим временем отклика (4–6 мс);

• контрастность – значение контрастности можно определить по соотношению яркости матрицы в двух «крайних» положениях – «черный» и «белый». Контрастность важна для четкого отображения изображения. Значение контрастности различно для разных типов матриц. Для S-IPS хорошим значением считается 400: 1, для PVA – до 1000: 1, а для TN + film – 250: 1. Поэтому, перед тем как судить о значении контрастности, нужно уточнить у продавца тип матрицы монитора. В любом случае, чем больше это значение, тем лучше;

• яркость – данная величина особенно важна для игр, просмотра видео, то есть для домашнего применения. Яркость измеряется в канделлах на квадратный метр. Нормальная величина яркости – от 300–500 кд/м2. Опять-таки, чем больше это значение, тем лучше;

• углы обзора – это значение влияет на четкость картинки, если смотреть на монитор под углом. Скажем, если вы хотите посмотреть фильм всей семьей, а угол обзора будет маленький, то у вас ничего не выйдет, поскольку не все будут четко видеть картинку;

• глубина цвета – чем больше это значение (должно быть не менее 16,7 млн цветов), тем лучше будет цветопередача;

• соотношение сторон экрана (формат) – соотношение ширины к высоте, например: 4: 3, 16: 9, 16: 10. Для работы с документами больше подходит формат 4: 3 (если, конечно, вы не собираетесь постоянно работать с документами с альбомной ориентацией страницы). А для игр и просмотра фильмов можно купить монитор с форматом 16: 9 и 16: 10;

• разъемы – перед покупкой монитора нужно убедиться, что его можно подключить к вашей видеокарте. Наиболее часто используются VGA, DVI или HDMI. Если монитор уже куплен, а разъем на видеокарте не подходит, делу можно помочь переходниками DVI–VGA и VGA-DVI (рис. 15.3–6).


Рис. 15.3. VGA-кабель для подключения монитора
Рис. 15.4. DVI-кабель для подключения монитора
Рис. 15.5. HDMI-кабель
Рис. 15.6. Переходники DVI–VGA и VGA-DVI

Теперь осталось решить, какого размера (по диагонали) монитор покупать. Учитывая снижение цен на LCD-мониторы, можно без особого ущерба для бюджета купить 19-дюймовый (обозначается 19??) монитор. Поэтому если есть деньги – покупайте, а если нет – тогда только 17??.

Пятнадцатидюймовые встречаются в продаже редко, да и стоят они не намного дешевле 17-дюймовых. Если вы в основном будете смотреть фильмы на компьютере или играть, тогда лучше купить 20-дюймовый монитор.


Журнал «Компьютерра» | СОФТЕРРИНКИ: Софтерринки

Понедельник, 25 Октября 2010 г. 17:23 + в цитатник

Автор: Илья Шпаньков

Жизнь по звездам

 

ОС Windows

Адрес lavresearch.com/lavclock

Версия 2.3

Размер 4,7 Мбайт

Интерфейс многоязычный (русский поддерживается)

Цена 150 рублей

Ознакомительный период 30 дней


Несмотря на бурный расцвет цифровых технологий и торжество научной мысли, многие по-прежнему склонны определять свою судьбу по звездам. Казалось бы - понимаем, что представляет собой космос, отправляем межпланетные зонды, но в глубине души верим, что не все так просто с влиянием светил на нашу скоротечную жизнь. Что ж, высокие технологии и здесь приходят на выручку - например, в лице программы LAVClock. Это астрологические часы, беспристрастно отслеживающие перемещение небесных тел и на основе полученных комбинаций предлагающие астропрогноз на интересующий вас срок. Кроме того, программа подскажет, когда лучше отправиться к парикмахеру и в какой день вы точно не придете с рыбалки без улова. В общем, без советов вы не останетесь, а уж верить им или нет, дело ваше.

Сканмастер

 

ОС Windows, Linux, Mac OS X

Адрес www.hamrick.com

Версия 8.4.86

Размер 4 Мбайт

Интерфейс многоязычный (русский поддерживается)

Цена $39,95

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


Все в мире дорожает, и только компьютерная техника с каждым годом становится дешевле и дешевле. Еще несколько лет назад приходилось стоять в очереди, чтобы отсканировать на чудо-машинке пару документов, а сегодня у многих из нас на полке пылится планшетник. Но сканер это лишь полдела - еще нужны программы, дабы задействовать его потенциал на все сто. И таковые имеются - например, VueScan, компактное приложение, обладающее массой достоинств. Прежде всего отметим простой интерфейс, позволяющий быстро освоить процедуру сканирования документов. Далее: помимо сканеров, VueScan может работать с фотокамерами. Вообще, программа имеет в арсенале множество функций, отсутствующих в приложениях, коими комплектуются сканеры, так что имеет смысл опробовать ее в деле.


56. Передача теплоты через шаровую стенку, Наталья Бурханова

Воскресенье, 10 Октября 2010 г. 19:50 + в цитатник

Пусть имеется полый шар с внутренним и внешним радиусами соответственно г1 и г2 коэффициент теплопроводности I которого постоянен. При заданных граничных условиях третьего рода будут также определены коэффициенты теплоотдачи на поверхностях шара a1 и a2 и температуры внутренней и внешней сред соответственно Tж1 и Tж2. Коэффициенты a1,a2 будут постоянными во времени, а температуры Tж1,Tж2 – постоянными и во времени, и по поверхностям.

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


где d1,d2 – внутренний и наружный диаметры шара;

a1,a2 коэффициенты теплоотдачи от горячей среды к стенке и от стенки к холодной среде;

I– коэффициент теплопроводности материала стенки;

T12 – температуры внутренней и наружной стенок.

где DT = Тж1 – Тж2 – полный температурный напор;

Кш – коэффициент теплопередачи шаровой стенки (Вт/град).


Величина обратная Кш называется термическим сопротивлением теплопередачи шаровой стенки:



Структура Редактора реестра | Роман Клименко

Воскресенье, 10 Октября 2010 г. 19:50 + в цитатник

После выполнения команды regedit на экране отображается окно Редактора реестра (рис. 1.1).

Рис. 1.1. Редактор реестра


В левой части данного окна приводится перечень разделов реестра (на рис. 1.1 раскрыт раздел реестра HKEY_CURRENT_USER), в правой части отображаются параметры и их значения. Главное меню окна Редактора реестра включает в себя пункты Файл, Правка, Вид, Избранное и Справка. Кратко остановимся на каждом из них.

• В составе меню Файл содержатся команды, предназначенные для работы с реестром в целом. С помощью команд Импорт и Экспорт производится, соответственно, импорт REG-файла в реестр и экспорт реестра целиком либо частично в REG-файл. При активизации данных функций на экране отображается окно, в котором нужно указать путь для выполнения этих действий. При необходимости подключения к реестру удаленного компьютера следует воспользоваться функцией Подключить сетевой реестр; с помощью функции Отключить сетевой реестр выполняется обратное действие.

• Команды меню Правка используются для работы с разделами либо параметрами реестра. Подменю Создать включает в себя команды Раздел, Строковый параметр, Двоичный параметр, Параметр DWORD (32 бита), Параметр QWORD (64 бита), Мультистроковый параметр и Расширяемый строковый параметр, предназначенные для создания соответствующих элементов реестра. С помощью команды Разрешения осуществляется переход в режим просмотра и редактирования разрешения для текущего раздела (при выборе данной команды на экране отображается окно, в котором выполняются необходимые действия). Команды Удалить (выполняется также нажатием клавиши Delete) и Переименовать предназначены для удаления либо переименования текущего элемента реестра соответственно. В результате выполнения команды Копировать имя раздела (Ctrl+C) в буфер обмена будет скопировано имя текущего раздела. Команды Найти (Ctrl+F) и Найти далее (F3) являются стандартными командами Windows; работа с ними ведется по обычным правилам.

• Команды меню Вид предназначены для управления отображением информации, содержащейся в окне Редактора реестра. Команда Строка состояния включает/выключает отображение строки состояния. С помощью команды Разделить включается режим перемещения разделителя левой и правой панелей окна. При необходимости отображения данных в двоичном формате следует воспользоваться командой Вывод двоичных данных (эта функция доступна только в том случае, когда указатель мыши расположен в правой панели окна). С помощью команды Обновить (она выполняется и при нажатии клавиши F5) обновляется окно.

• Команды меню Избранное предназначены для добавления раздела в список избранного либо для удаления его из этого списка.

• С помощью меню Справка можно вызвать справочную информацию о Редакторе реестра.

Как отмечалось выше, левая панель окна содержит иерархический перечень разделов реестра. Правая панель окна состоит из столбцов Имя, Тип и Значение, в которых отображается соответствующая информация (имя параметра, тип данных и значение параметра) для активной позиции в левой панели окна.

В следующем разделе мы рассмотрим порядок редактирования системного реестра Windows Vista.


Владислав Мяснянкин, PSN корпорации Intel

Вторник, 05 Октября 2010 г. 03:01 + в цитатник

Фирма Intel неожиданно внедрила серийные номера процессоров [Processor Serial Number, PSN] в микропроцессорах Pentium III.

Изначально эти номера были разработаны для идентификации «разогнанных» процессоров (т. е. когда процессор с тактовой частотой 500 мегагерц продавался как 600-мегагерцовый чип) и для облегчения отслеживания перемещения компьютеров в крупных организациях. Когда высшее руководство узнало об этой возможности, PSN были преподнесены как решение для электронной коммерции: Intel предложила web-сайтам использовать специальное программное обеспечение для считывания PSN клиентских компьютеров через Интернет.

Когда в январе 1999 года PSN были анонсированы, Intel сделала акцент на их применимости в электронной коммерции, а не как средства активного слежения. Буквально через неделю несколько групп пользователей организовали бойкот микропроцессора, справедливо предположив, что, скорее всего, PSN будут применяться для отслеживания перемещений пользователей по сайтам Интернета. Тем временем известный эксперт в области криптографии Брюс Шнайер [Bruce Schneier] опубликовал разгромную статью, в которой подверг PSN резкой критике, так как не существовало безопасного способа считывания этих номеров. Он писал:

Когда web-сервер запрашивает идентификатор процессора, он не может узнать, является ли полученное в ответ число истинным или поддельным. Аналогично, когда какая-нибудь программа запрашивает PSN, она не может достоверно знать, действительно ли ей возвращен реальный идентификатор или специальным образом модифицированная операционная система перехватила вызов и вернула поддельное число. Поскольку Intel не озаботилась параллельным созданием безопасного способа считывания идентификатора, безопасность нарушить очень легко.[61]

Американская банковская система, в числе крупнейших секторов экономики, одной из первых перешла на использование машиночитаемых кодов. В 1963 году некоторые банки начали печатать чеки с использованием специальных магнитных чернил, что позволило компьютерам автоматически считывать 9-значный код банка, номера счетов и номера чеков, отпечатанные внизу каждого чека. Это была замечательная идея: к 1969 году 90 % чеков в США печатались блестящими черными цифрами, существенно снижая время, необходимое на их обработку.[62] В 1970-е годы банковская индустрия стала помещать на кредитные карты магнитную полосу, что позволяло считывать информацию проводя картой по считывателю. До этого информация с карты вводилась в компьютер вручную, потом переводилась на слип с использованием копировальной бумаги и ролика.

Другие отрасли гораздо медленнее двигались в сторону автоматически считывающих информацию систем. Только в середине 1990-х годов General Motors стала дополнительно наносить на таблички с VIN-кодами машиночитаемый штрих-код. В отличие от старого способа, когда VIN мог быть прочитан только человеком, штрих-код мог считываться высокопроизводительным лазерным сканером с расстояния более шести метров. Быстро появились сторонники нанесения штрих-кодов на VIN.

Одним из первых новинкой воспользовалось агентство по прокату автомобилей Avis, начавшее применять лазерные сканеры для автоматической идентификации автомобилей по возвращении их на стоянку. В ближайшие годы машиночитаемый VIN будет иметь все большее значение. Например, городские парковки могут использовать штрих-коды для автоматического открывания ворот постоянным клиентам. Другие компании уже разработали системы технического зрения, которые могут считывать номер стоящего или движущегося автомобиля, и работают над созданием системы, которая могла бы идентифицировать автомобиль на расстоянии.


Алексей Шашков. 7.10. Как изменить загрузочную картинку WindowsXP?

Вторник, 05 Октября 2010 г. 03:01 + в цитатник

Делается это так же как и в W2k, что описано здесь 3dnews.ru/win2000-boot-logo , но есть небольшие отличия. Если не сильно вдаваться в подробности, то делается это так:

Качаем ResHacker или аналогичную утилиту: users.on.net Этим самым резхакером открываем \winxp\system32\ntoskrnl.exe Слева в столбике списка ресурсов Bitmap-ресурсы под номерами 1, 8 и 10 являются картинками загрузочного лого. Для WinXP Pro это общая картинка, бегущие синие "таблетки" и надпись "Professional". Их можно сохранить на диске, отредактировать в любом редакторе растровой графики (Adobe Photoshop, Jasc Paint Shop Pro и т.п.) и, сохранив, резхакером всунуть обратно в файл ядра ntoskrnl.exe. При этом нужно обойти один подводный камень, который подложила микрософт: при открытии в редакторе эти bmp-шки выглядят абсолютно черными. Для исправления этого недоразумения нужно воспользоваться специальной палитрой, загрузив файл палитры и применив его к открытой bmp-шке. Для фотошопа файлик с палитрой можно взять здесь: http://www.thetechguide.com/howto/xpbootlogo/16.act. Или ручками вбить в редакторе палитры:

R G B

0 0 0

0 0 0

32 26 21

45 62 210

83 101 1

178 53 5

70 70 70

137 146 0

74 127 252

247 107 32

141 166 255

142 220 4

243 188 27

188 188 188

255 255 255

255 255 255

Когда эта палитра будет загружена для открытой bmp-шки, она примет вид как при загрузке. Картинку можно отредактировать, не меняя параметров разрешения и т.п., а потом сохранить и всунуть резхакером в ядро. Возможно, перед сохранением нужно применить палитру, состоящую только из черных цветов (все цвета черные, RGB=0,0,0), чтобы вернуться к исходному кодированию картинки как у микрософт.

НЕ НАДО ПЫТАТЬСЯ заменить ИМЕЮЩИЙСЯ ntoskrnl.exe! Во первых этому возмутится sfc, во вторых это просто не самая лучшая идея. Гораздо разумнее, после засовывания измененных картинок сохранить попорченное ядро как, например, kernel01.exe (обязательно в формате DOS filename 8.3, т.е., имя файла не более 8 букв без пробелов и пр. + .exe). А затем воспользоваться замечательным ключом /kernel= filename.ext в файле настройки загрузчика C:\boot.ini (может быть скрытый/системный):

[boot loader]

timeout=7

default=multi(0)disk(0)rdisk(0)partition(1)\WINXP

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINXP= "Original Windows XP" /fastdetect

multi(0)disk(0)rdisk(0)partition(1)\WINXP= "New Logo Windows XP" /fastdetect /kernel=kernel01.exe

Таким образом, мы сохраним исходный файл ядра ntoskrnl.exe, сохраним исходную строчку в boot.ini и всё это без каких-либо модификаций реестра или обхода системы system file checking. Единственное, следует выставить несколько секунд timeout для того, чтобы иметь возможность выбора при загрузке. После успешного тестирования модифицированную строчку можно перенести наверх, тогда она будет по умолчанию загружаться по истечении timeout, или нажатии на Enter.


23. Расчет точности электрических цепей приборов. Методы расчета / М. А. Бабаев

Суббота, 02 Октября 2010 г. 19:30 + в цитатник

В электрических цепях механизмов в основном используют следующие элементы: сопротивления R; емкости С; индуктивности L; взаимные индуктивности М.

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

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

Если при изменении выходных параметров на постоянную величину между UR и Uт образуется разность, то ее называют ошибкой изменения цепи по напряжению (или по току), где UR – выходноенапряжение реальной цепи, Uт – выходное напряжение идеальной цепи.

Если же (UR – Uт) возникает из-за ошибок цепи и входных параметров, то такую разность называют ошибкой изменения выходного напряжения.

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

?U = E х Тi ?qi,

где


В нашем случае погрешность ?qi может возникать из-за первичных ошибок, перечисленных выше.

Для вычисления ?U требуется знать коэффициент влияния 

который выражает, в какой степени

первичные ошибки передались на выход через параметр ?qi и вызвали ошибку ?Ui. Для этого пользуются методом преобразованных цепей (другие методы громоздки по вычислению): выделив изучаемую ошибку, на ее месте образуют новую пару полюсов (закорачивают источник питания).

Только следует учесть, что ошибка ?Ui может быть внесена в результате, например, ошибки в монтаже схемы в виде утечки тока ?Аi. В этом случае определение коэффициента влияния Тi проводится также по формуле, путем простой замены Ri на Аi;, где ?Аi – омическая проводимость.

Коэффициента влияния работы электрической цепи в переходном режиме: здесь цепь содержит, кроме сопротивлений R, еще и реактивные элементы: емкость С, индуктивность L, взаимная индуктивность М.

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


«Поларис» A3 / Андрей Анатольевич Николаев

Суббота, 02 Октября 2010 г. 19:30 + в цитатник

Британский Королевский флот последним принял на вооружение подводные баллистические ракеты «Поларис». В середине 80Гх годов ВМС Великобритании обновили свой запас ракет, обеспечив тем самым боеспособность своих стратегических ракетных сил до размещения в Англии американских ракет «Трайдент». Каждая из английских ракет, которых насчитывалось 133 единицы, вооружалась тремя разделяющимися боеголовками британского производства. Эти ракеты предназначались для поражения целей большой площади - например, городов и нефтяных месторождений. Эффект от применения одной самой мощной боеголовки резко уменьшался при удалении от эпицентра взрыва, в то время как несколько боеголовок, пусть даже меньшей мощности, но попавшие близко к цели, наносят значительно больший урон. Впоследствии британские ракеты «Поларис» были модернизированы и оснащены системой преодоления противоракетной обороны по так называемому проекту «Чивелайн», результатом чего стало появление ракет «Поларис» АЗТК. Эта модернизация стала необходима в связи с успехами СССР в создании систем противоракетной обороны.

Класс оружия: подводная баллистическая ракета

Фирмагразработчик: Lockheed

Страна: США

Вес: 15876 кг

Размеры: диаметр 1,4 м, длина 9,8 м

Дальность: 2560 мор. миль (4740 км)

Боевая часть: три разделяющиеся боеголовки по 60

килотонн и система преодоления ПРО

Скорость: нет информации

На вооружении: США, Англия



13. СПЕЦИАЛЬНАЯ ПОДГОТОВКА / Автор неизвестен

Четверг, 30 Сентября 2010 г. 12:32 + в цитатник

13.1. Требование специальной подготовки распространяется на работников из числа оперативного и оперативно-ремонтного персонала электростанций и сетей.

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

13.2. Специальная подготовка персонала должна проводиться с отрывом от выполнения основных функций не реже одного раза в месяц и составлять от 5 до 20 % его рабочего времени.

13.3. В объем специальной подготовки должно входить: выполнение учебных противоаварийных и противопожарных

тренировок, имитационных упражнений и других операций, приближенных к производственным;

изучение изменений, внесенных в обслуживаемые схемы и оборудование;

ознакомление с текущими распорядительными документами по вопросам аварийности и травматизма;

проработка обзоров несчастных случаев и технологических нарушений, происшедших на энергетических объектах;

проведение инструктажей по вопросам соблюдения правил технической эксплуатации, производственных и должностных инструкций;

разбор отклонений технологических процессов, пусков и остановок оборудования.

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

13.4. Программу специальной подготовки и порядок ее реализации определяет руководитель организации.



Поиск сообщений в pokachivat
Страницы: [2] 1 Календарь