write 返回了,断电之后数据还在吗
write 返回了,一秒后断电 —— 数据还在吗?
Скопируйте заготовку и выберите модель. Она будет вести себя как интервьюер и разбирать задачу с вами по действиям, а не выкладывать ответ.
На телефоне с установленным приложением система откроет само приложение. Внутри WeChat внешние приложения не открываются — сначала откройте ссылку в браузере.
В конце скопированного текста лежит разбор, по которому модель вас оценивает. Не читайте его заранее: ценно именно то, что вы дошли сами.
这是所有「重启之后数据没了」「日志少了最后几行」类事故的源头。
中心问题是一个很多人从没想过的:新建一个文件、写完、fsync 了,断电之后这个文件一定在吗? 文件内容落盘了,但「这个目录下有这个文件」这条目录项呢。
最后一幕是那个著名的坑:fsync 返回错误之后重试,可能返回成功而数据从来没写进去。知道这一条的人不多,踩上的代价很大。
Что тренирует эта
Этот текст в репозитории (в конце того файла лежат карты на руках — вы их увидите)
Делали эту задачу?
Войдите, чтобы отметить, что задача пройдена: в следующий раз будет видно, когда это было.
Заметки тех, кто уже прошёл
Как этим пользоваться
Эта серия учит, а не допрашивает: она ведёт, а не давит, пока вам нечего станет сказать. Когда вы застряли, она сначала спрашивает, на каком уровне (не слышал / знаю, но не понимаю почему / понимаю, но не применяю), и только потом решает, что дать. Прямой ответ — лишь после двух попыток вас подвести, и затем просит пересказать своими словами.
Она будет всё время требовать цифры: ответите «есть накладные расходы» или «быстрее» — вас оборвут. Вывод, к которому вы не можете назвать порядок, — это заученный вывод, и именно это здесь тренируется.
С чего начать
- Выберите одну, откройте, скопируйте промпт.
- Вставьте в совершенно новый пустой диалог, ничего не говорите и ждите первого вопроса.
- Готовьтесь называть порядки: сколько наносекунд, сколько микросекунд, во сколько раз медленнее. Сказать «не знаю» нормально — она пометит и пойдёт дальше.
Четыре команды, которые можно бросить в любой момент
跳过сразу к следующей сцене换个说法объяснить это место под другим углом直说吧дать полный ответ, а потом заставить меня пересказать复盘перейти к финалу и выдать карточку разбора
Три ловушки
- Не читайте ответы в конце заранее — раздел «как обычно ошибаются» и есть ответ на каждый вопрос.
- Не хватайтесь за термин. Сказать «это промах TLB» легко; сказать, насколько он дешевле отказа страницы, — вот это и считается.
- Когда начнёт вас хвалить, напомните про правило «не хвали меня». Вести — не значит нянчить.
Чтобы набрать чувство порядков: случайное чтение, затем первый байт. Для разбора инцидентов: malloc, залипания TCP, переключения контекста. Для многопоточного кода: переупорядочивание и ложное разделение.
Войти, чтобы написать заметку.