Буквально вчера наткнулся на статью под названием "Привет из свободного от libc мира. Часть 1". Автором этой статьи была девушка и, наверное, именно этот факт заставил меня посетить ее блог, где я нашел продолжение первой части (и другие интересные посты, о которых скажу в конце), которое и хотел бы представить здесь. Перед тем, как прочитать вторую часть, прочитайте первую, ее перевод есть на хабре. Итак...
«Мастер ФУ! А зачем нужны системные вызовы? - Затем же, зачем тебе нужен твой сосуд
Какой сосуд? - решил уточнить ученик - А вот какой! - крикнул мастер, ударяя ученика палкой»
Системные вызовы это интерфейс для взаимодействия ядра ОС и внешних приложений. В данной заметке мы не будем рассматривать, как устроены системные вызовы, мы рассмотрим только использование некоторых из них (предназначенных для работы с файлами). Итак начнем:
“Самый лучший способ изучить новый язык – это сразу начать писать на нем программы” - Брайан Керниган, Деннис Ритчи
Вот и мы последуем этому совету и начнем изучние с простой программы, которая ищет максимальный элемент в массиве.
Вместо введения
"... Ассемблер - это язык процессора и, следовательно, он будет нужен до тех пор, пока будут существовать процессоры... Программирование на ассемблере дает ощущение власти над компьютером, а жажда власти - один из сильнейших инстинкотов человека" - Пирогов В.Ю. (на обороте книги "Ассемблер для Windows" :-))
Сейчас в университете изучаем ассемблер, и необходим какой-нибудь хороший дебаггер (желательно gui).