Контрольные вопросы

Контрольные вопросы

11.05.2019

Форматирование диска


Между прочим, сделать это не так уж и просто.

Если вы хотите просто запустить программу Format, то можете конечно ограничиться фнкцией Shell. Например: x=Shell (format a:) И все...

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

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

Если вы не привередливый, то все может прекрасно решить одна единственная API функция WinExec, которая может исполнять различные проги под Windows и MS-DOS

Вот ее объявление:

Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, _
ByVal nCmdShow As Long) As Long

lpCmdLine - строка, содержащая путь к программе для исполнения
nCmdShow - число, говорящее о том, как надо выводить окно (свернутым, развернутым...)

Какие значения может принимать nCmdShow:

SW_HIDE - программа спрятана, действие передано другому окну
SW_MINIMIZED - программа минимизирована (висит на панели задач). Другое окно активно
SW_RESTORE - окно развернуто до своего начального размера и позиции
SW_SHOW - окно развернуто до своего текущего размера и позиции
SW_SHOWMAXIMIZED - окно максимизировано и активно
SW_SHOWMINIMIZED - окно свернуто и активно
SW_SHOWMINNOACTIVE - окно свернуто, но активное окно не меняется
SW_SHOWNA - окно отображается в своем текущем положении и размере, но активное окно
не меняется
SW_SHOWNOACTIVATE - окно отображается в самом недавнем своем положении, но активное
окно не меняется
SW_SHOWNORMAL - окно отображается в своем оригинальном размере и положении

Значения этих констант смотрите в ApiLoader"е.

Отработав, функция WinExec возвращает значение больше 32, если все было успешно, если произошла ошибка, то функция возвратит ее код от 0 до 32:

0 - не хватает памяти
2 - файл не найден
3 - путь не найден
5 - ошибка совместного доступа
6 - каждая задача требует раздельные сегменты данных
10-неправильная версия Windows
11-неправильный EXE файл
12-нельзя выполнить приложение OS/2
13-нельзя выполнить приложение DOS 4.0
14-неизвестный EXE тип
15-защищенный режим памяти не поддерживается Windows
18-нельзя загрузить приложение защищенного режима в реальном режиме

Не знаю, понадобятся ли вам эти ошибки, но если понадобятся, то вот они.

Параметр lpCmdLine должен указывать на приложение, которое будет выполняться. Если не указан полный путь, то Windows будет производить поиск в следующем порядке:

1. Текущая папка
2. Директория Windows
3. Системная директория Windows
4. Папка, в которой находится активная программа
5. Все директории, определенные в окружении PATH
6. Сетевые директории

Функция WinExec может выполнять приложения, работающие из-под Windows или из-под DOS, с расширениями EXE, COM и BAT. Также, могут быть выполнены экранные заставки (SCR) и программно-информационные файлы (PIF).

Но вернемся к нашей задаче: отформатировать дискету. В Windows входят несколько PIF-файлов, в том числе и DOSPRMT.PIF. Этот файл говорит, какой режим надо устанавливать для исполнения задачи, например, сколько памяти надо отводить под приложение MS-DOS. Воспользовавшись этим файлом, мы можем заставить Windows выполнить команду DOS - Format . Пробовать форматировать мы будем диск A, поэтому смотрите, что есть у вас и ставьте свою букву. (Можете, конечно C, но учтите, что процесс остановить будет нельзя:)

Итак, первую проблему мы решили: с помощью функции WinExec выполнили команду format a: и запустили ее в режиме WM_HIDE, то-есть спрятали. Причем, вы не увидите процесс форматирования даже при нажатии Ctrl-Alt-Del (C-A-D)!

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

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

Таким образом, командная строка приобретает вид:
format a: < c:\responce.tmp
где responce.tmp - это временный файл с набором клавиш.

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

Пример показывает, как форматируется диск A. С первого взгляда, я понапихал туда слишком много объектов. Ну и в самом деле, зачем там таймер? А вот зачем: вы можете создать файл responce.tmp, вызвав WinExec, запустить процесс форматирования, а затем написать Kill "c:\responce.tmp" - и это буде неправильно! Почему? Потому что пока Format будет раскочегариваться, ваша программа успеет уже раз десять удалить файл с клавишами, ведь управление из нее никуда не девается.

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

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

Ну а со строкой состояния, это уже конечно прибабмбасы...

Вот и все,
приятного программирования.

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

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

Что происходит при форматировании диска?

Перед тем, как приступить к восстановлению диска после форматирования, желательно иметь представление о том, что совершается при его форматировании.

Как известно, в операционной системе Windows существует два варианта форматирования: быстрое и полное. Существует весьма распространенный миф, который гласит, что при после полного форматирования диска данные восстановить невозможно, потому что Windows физически стирает информацию на нем. Действительно, все на первый взгляд логично: раз полное форматирование занимает больше времени, значит… Если вы думали так же, знайте: никакого «затирания» информации не происходит, и восстановление диска после полного форматирования ничем не отличается от случаев быстрого форматирвоания.

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

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

Более тяжелый случай - форматирование диска не стандартными средствами Windows, а специальными программами, которые действительно перезаписывают сектора на диске. В этом случае восстановить утраченную информацию самостоятельно точно не удастся.

Самостоятельное восстановление диска после форматирования

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

  • EasyRecovery;
  • GetDataBack;
  • R-Studio;
  • UFS Explorer;
  • R.Saver.

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

Методика восстановления данных после форматирования следующая:

  1. исключить запись данных на отформатированный диск. Запомните: восстановление диска после форматирования будем тем успешнее, чем раньше вы это сделаете. Дело в том, что даже если вы сами ничего не записывали на отформатированный дисковый раздел, это могла сделать операционной система, которая постоянно обращается к диску;
  2. найти еще один диск большего размера;
  3. загрузиться с LiveCD, содержащего одну или несколько программ для восстановления данных, и провести сканирование и восстановление информации.

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

Кстати, процесс восстановления данных занимает длительное время - все зависит от объема диска, и может занять весь день, так что запаситесь терпением.

Что делать, если нужные вам данные восстановить не удается?

Допустим, вы перепробовали множество программ, но либо не получили никакого результата, либо результат восстановления диска после форматирования вас не устраивает: например, восстановились не все данные. Что делать? Неужели это конец? Не спешите отчаиваться…

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

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

    Какую роль играют оболочки?

    Что такое интерфейс пользователя? Сравните интерфейс MS DOS и Norton Commander.

    Опишите основные возможности оболочки NortonCommander.

    Что такое панель оболочки NortonCommander? Для чего используются панели вNortonCommander?

    Чем отличается основная панель NortonCommanderот диалоговой?

    Что такое курсор панели?

    Что такое меню?

    Дайте определение терминам «пункт меню», «курсор меню», «активное меню», «неактивное меню», «основное меню», «спускающееся меню», «система меню».

    Из чего состоит меню пункта оболочки NortonCommander?

    Какие условные обозначения используются в системе меню оболочки?

    Какие клавиатурные способы выбора команд из системы меню оболочки вы знаете?

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

    Опишите основные операции, которые выполняются с меню.

    Опишите способы открытия и закрытия основного меню.

    Опишите способы перемещения и выбора в основном меню.

    Опишите способы перемещения, выбора и выхода для меню пункта.

    Когда на экране появляются диалоговые панели? Как закрыть (удалить с экрана) диалоговую панель?

    Опишите внешний вид диалоговой панели. Что может находиться внутри диалоговой панели?

    Какие элементы управления используются в диалоговых панелях NortonCommander?

    Дайте определения терминам «активный элемент управления», «курсор диалоговой панели».

    Опишите основные способы перемещения между элементами управления панели.

    Опишите внешний вид и способы работы пользователя с полем ввода.

    Опишите внешний вид и способы работы пользователя с кнопкой. Что такое нажатие кнопки?

    Укажите наиболее часто присутствующие в диалоговых панелях кнопки. К чему приводит нажатие на эти кнопки?

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

    Опишите внешний вид и способы работы пользователя с флажками.

    Опишите внешний вид экрана во время работы оболочки NortonCommander.

    Какие курсоры и указатели могут находиться на экране во время работы NortonCommander?

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

    Как используются горячие клавиши для выбора команд оболочки?

    Опишите способы использования мыши для выполнения команд оболочки.

    Какой вид может принимать основная панель оболочки NortonCommander?

    Опишите внешний вид основной панели с каталогом в полной форме. Каким образом панель настраивается на эту форму?

    Опишите внешний вид основной панели с каталогом в сокращенной форме. Каким образом панель настраивается на эту форму?

    Опишите внешний вид основной панели с каталогом в форме дерева. Каким образом панель настраивается на эту форму?

    Сравните разные формы представления каталогов в основной панели. Укажите преимущества и недостатки этих форм.

    Опишите внешний вид информационной формы основной панели. Для чего она используется? Каким образом панель настраивается на эту форму?

    Опишите способы упорядочения файлов в основной панели NortonCommander.

    Опишите способы управления видимостью основных панелей.

    Опишите способы перемещения между панелями NortonCommander.

    Как настроить основную панель на конкретное дисковое устройство?

    Опишите способы перемещения по списку файлов текущего каталога.

    Опишите способы перехода между каталогами разных уровней.

    Каким образом осуществляется запуск программы из оболочки NortonCommander?

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

    Для чего нужна справочная система оболочки и как к ней можно обратиться?

    Опишите способы управления справочной системой.

    Для чего нужны полоса прокрутки и бегунок?

    Опишите способы управления прокруткой справки с помощью мыши.

    Как просмотреть содержимое файла с помощью оболочки NortonCommander?

    Что можно узнать из строки статуса при просмотре файла?

    Что содержит строка подсказки при просмотре файла?

    Опишите основные способы перемещения по файлу при его просмотре.

    Как внести изменения в текстовый файл с помощью оболочки NortonCommander?

    Как создать новый текстовый файл средствами оболочки NortonCommander?

    Что можно узнать из строки статуса при редактировании файла?

    Что содержит строка подсказки при редактировании файла?

    Опишите способы перемещения по файлу при его редактировании.

    Опишите выполнение редактирования строки текста в режиме вставки.

    Опишите способы удалений из файла при его редактировании.

    Опишите способы добавления строк в файл.

    Как завершается редактирование файлов во встроенном редакторе NortonCommander?

    Для чего формируются группы файлов? Что может входить в группу?

    Опишите способы формирования групп.

    Для чего нужно исключение из группы?

    Опишите способы исключения из группы.

    Как выполнить копирование одиночного файла или подкаталога?

    Как выполнить копирование группы?

    Как вывести текстовый файл на печать?

    Как выполнить перемещение одиночного файла или подкаталога, группы файлов?

    Как выполнить переименование одиночного файла или подкаталога, группы файлов?

    Как создать подкаталог?

    Как выполнить удаление одиночного файла или подкаталога, группы?

    Как закончить работу оболочки NortonCommander?

    Как можно снять копию с гибкого диска с помощью оболочки NortonCommander?

    Какие установки нужно выполнить в диалоговой панели Копирование дискеты?

    Как можно разметить дискету с помощью оболочки NortonCommander?

    Какие установки нужно выполнить в диалоговой панели Форматирование дискеты?

    Как создать системную дискету с помощью оболочки NortonCommander?

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

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

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

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

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

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

Особенности форматирования жесткого диска и флешки

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

Если флешка определяется как устройство с нулевой ёмкостью либо как неизвестное устройство, выдаёт ошибки чтения/записи, которые не удаётся исправить другими способами, для её форматирования рекомендуется использовать специальные фирменные утилиты, скачать которые обычно можно непосредственно с официального сайта производителя флеш-устройства. Всё вышесказанное справедливо и в отношении низкоуровневого форматирования SD-карт.

Лучшие программы для низкоуровневого форматирования

В принципе, произвести такое форматирование можно средствами самой Windows, запустив в командной строке утилиту Diskpart и выполнив для выбранного накопителя команду clean all , но всё же лучше использовать для этих целей специальные программы.

Пожалуй, самая известная программа для низкоуровневого форматирования жёстких дисков HDD/SSD, флешек и карт памяти. Утилита бесплатна, имеет малый вес, простой интерфейс, поддерживает работу с SATA, IDE, SCSI, USB и Firewire. Дополнительно программой поддерживается Ultra-DMA режим, просмотр сведений о диске и данных S.M.A.R.T. В процессе форматирования HDD Low Level Format Tool полностью уничтожает на диске все данные, включая MBR и содержимое таблицы разделов, заполняя каждый сектор или ячейку памяти нулями.

Пользоваться утилитой несложно. После подключения к компьютеру проблемного носителя нужно выбрать его в окне программы и нажать кнопку «Continue». В следующем окне необходимо переключиться на вкладку «Low-Level Format» и нажать «Format This Device».


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



SeaTools for DOS и SeaTools for Windows

Полностью очистить диск или флешку можно с помощью диагностического инструмента SeaTools. Программа заточена под диски Seagate, но также может работать и с дисками других производителей. Приложением поддерживается работа с интерфейсами SATA, USB, 1394, PATA, IDE и SCSI, выполнение структурной проверки носителя, тестирование контроллера и системной памяти. Форматирование выступает в роли дополнительной функции.


Чтобы очистить диск или флешку, в меню SeaTools необходимо выбрать Advanced – Full Erase , после чего будет начато низкоуровневое форматирование, в ходе которого все сектора перезапишутся нулями.


Распространяется SeaTools в двух редакциях: For DOS и For Windows. В отличие от второй, представляющей собой десктопное приложение, первая редакция – это загрузочный ISO-образ. Обе версии поддерживают русский язык, но по умолчанию интерфейс программы английский.

Western Digital Data LifeGuard Diagnostics

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


Программой поддерживается , считывание показаний S.M.A.R.T., просмотр подробной информации о подключённых носителях. Использовать ее в качестве шредера очень просто. Дважды кликните по выбранному в окне утилиты носителю, нажмите «Erase», а затем «Start».


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



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows