Сейчас на форуме: (+5 невидимых) |
eXeL@B —› Дневники и блоги —› Отладка программ под Linux |
<< . 1 . 2 . |
Посл.ответ | Сообщение |
|
Создано: 04 февраля 2017 20:21 · Поправил: Модератор · Личное сообщение · #1 0. Здравствуйте дорогие друзья,мне захотелось рассказать про отладку программ под Linux. Для начала я вам расскажу, что для этого нам потребуется. компилятор GCC,он присутствует практически во всех дистрибутивах. Поэтому его установку я объяснять не буду. Открываем терминал пишем. 1. mkdir ctest // Первая команда нам создаст каталог. 2. cd ctest // вторая перейдет в этот каталог. 3. nano ctest.c //а третья создаст файл ctest.c / откроет в текстовом редакторе nano. 4. Теперь нам необходимо ввести : Code:
5. сохранить наш код в данном файле, для этого нажмем Ctrl+X, на что нам редактор сообщит, сохранить или нет изменения в нашем файле, нажмем на клавиатуре Y или напишем Да. 6.Oткомпилировать нашу программу. gcc -o ctest ctest.c 7. ввести: s~ objdump -d ctest //теперь смотрим дамп. 8f23_04.02.2017_EXELAB.rU.tgz - 01.png |
|
Создано: 09 апреля 2017 07:48 · Поправил: Abraham · Личное сообщение · #2 Друзья совсем забыл,есть еще одна фишка. Perl язык программирования,команда print удобна для создания длинных последовательностей символов. Perl выполнение с помощью ключа -e. Это команда указывает Perl, надо выполнить команды, в одинарные кавычки. Code:
Эту фишку рассмотрим попозже,переполнения буфера,с помощью языка Perl. А пока ,про тестируйте. |
|
Создано: 11 апреля 2017 01:32 · Поправил: Abraham · Личное сообщение · #3 Мне нужен калькулятор,чтобы сложить байт памяти. Давайте напишем свой калькулятор ,для сложения чисел. Прога,использующая библиотеку ввода-вывода. Программа отображает приглашение ввести два числа. Enter two numbers: Затем ожидает ввода. Ввели следующие два произвольных числа 35 76 ,и клавишу <Enter> отобразит The sum of 35 and 76 is 111 Code:
Cкомпилируем $ g++ prog.cc -o prog Оператора вывода,резултатом является значение его левого операнда. Значение,возвращенным операцией вывода-вывода,является сам поток. Оператор возвращает свой левый операнд,связать в месте несколько запросов на вывод. Оператор,ввести два числа,эквивалентен следующему. std::cout << " Enter two numbers:" << std::endl; (std::cout << " Enter two numbers:") Возвращает свой левый операнд, std::cout,этот оператор эквивалентен следующему.std::cout << " Enter two numbers:" ; std::cout << std::endl Слово endl Запись в поток вывода происходит переход на новую строку и сброс буфера, связанного сданным устройством.Сброс буфера , записанные в поток вывода ,данные будут отображены. Наша программа будет работать ,даже если мы напишем вот так. Code:
|
|
Создано: 29 июня 2017 09:55 · Поправил: Abraham · Личное сообщение · #4 Приветствую вас мои друзья! У меня есть немного времени,хочу поговорить о шифровальщике. Рекомендации по защите компьютера от программ-шифровальщиков 1. Общие рекомендации 1. Не открывайте почтовые вложения от неизвестных отправителей В большинстве случаев программы-шифровальщики распространяются через почтовые вложения. Задача злоумышленника – убедить пользователя открыть вложение из письма, поэтому темы писем содержат угрозы ,уведомление от арбитражного суда об иске; исполнительное производство о взыскании задолженности, возбуждение уголовного дела и тому подобное. При этом вредоносными могут оказаться не только файлы формата EXE. Зафиксированы случаи заражения компьютеров при открытии файлов форматов DOC и PDF. 2. Своевременно обновляйте , операционную систему и другие программы. 3. Регулярно создавайте резервные копий файлов и храните их вне компьютера Храните резервные копии вне компьютера (например, на съёмных носителях или в «облачных» хранилищах) и в зашифрованном виде. Таким образом, файлы будут защищены не только от программ-шифровальщиков, но и от отказов компьютерной техники. 4. Настройте доступ к общим сетевым папкам Если вы используете общие сетевые папки, создать отдельную сетевую папку для каждого пользователя. При этом права на запись должны быть только у владельца папки. Таким образом, при заражении одного компьютера файлы будут зашифрованы только в одной сетевой папке. В противном случае, заражение одного компьютера может привести к шифрованию всех документов на всех сетевых папках. 2. Рекомендации по настройке параметров компьютера Начиная с операционных систем Windows входит служба защиты системы на всех дисках. |
|
Создано: 30 июня 2017 19:13 · Личное сообщение · #5 |
|
Создано: 01 июля 2017 16:23 · Поправил: Abraham · Личное сообщение · #6 |
|
Создано: 06 июля 2017 12:13 · Поправил: Abraham · Личное сообщение · #7 Дело в том,что байты отображаемых символов ASCII. ASCII -это стандарт отображения всех символов, которые вы видите на своей клавиатуре. Таблицу ASCII можно вывести командой man ascii ,которая есть в большинстве систем UNIX. Code:
|
|
Создано: 09 июля 2017 03:50 · Поправил: Abraham · Личное сообщение · #8 Code:
GDB examiine позволяет отображать и такое содержимое памяти.Формат с автоматически покажет байты согласно таблице ASMII,а формат s покажет всю строку символьных данных. Code:
Эти команды показывают,что по адресу 0x8048484 хранится строка << Hello ,World!\n>>. Это строка передается в качестве аргумента функции printf(),указывающего,что запись адреса этой строки (0x8048484) в ячейку,адрес которой содержит esp |
<< . 1 . 2 . |
eXeL@B —› Дневники и блоги —› Отладка программ под Linux |