Как убедить моего коллегу в том, что код ядра linux является новым?

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

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

Сегодня другое. Очевидно, что вызов одного и того же системного вызова из разных процессов, работающих параллельно на одной и той же архитектуре, не приведет к неопределенному поведению. Ядро Linux широко распространено в настоящее время и известно своей надежностью даже при работе на многоядерных архитектурах. Это мой аргумент на данный момент. Но что бы вы могли доказать это объективно ?

Я думал показать ему какую-нибудь функцию в ядре linux (на сайте lxr ) в виде системного вызова mutex_lock (). Eveything настроен, чтобы заставить его работать в параллельной среде. Но код может быть не так очевиден для новичка (как и я).

Пожалуйста, помогите мне.. ;-)

12.10.2009 23:03:59
Напоминает мне об этом: xkcd.com/386 Серьезно, зачем тратить энергию на дураков?
Paul Abbott 12.10.2009 23:13:11
Потому что я заинтересован в том, чтобы знать точку зрения другого, а обсуждение приносит больше знаний всем, скорее, все еще догадываясь о том, что правда
yves Baumes 13.10.2009 07:43:46
4 ОТВЕТА
РЕШЕНИЕ

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

5
12.10.2009 23:12:07

Самый простой способ доказать, что несколько процессоров могут выполняться в ядре одновременно, - написать программу, которая выполняет много работы в ядре (например, ищет длинные пути в тесном цикле), а затем запустить две копии в в то же время на двухъядерной машине и показать, что процент «системы» в России topпревышает 50%.

2
13.10.2009 00:01:56

Риск быть язвительным: почему бы просто не прочитать код? Если ни один из вас не достаточно опытен, чтобы следовать коду через обработчик прерываний в какую-то подсистему, где вы можете считывать код синхронизации, тогда ... зачем? Разве это не просто танец на спине? Это как креационист, требующий «доказательства» эволюции, когда они не заинтересованы в изучении биологии.

1
13.10.2009 02:39:37

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

0
28.10.2009 20:53:00