Насколько сложен код в Microsoft Windows
Это действительно зависит от того, как вы определяете сложность. Существует много различных метрик, используемых и комбинированных для измерения сложности программного обеспечения.
Конечно, чтобы прочитать и понять код, вам нужно было иметь представление об общей архитектуре Windows NT. Вероятно, лучшим источником информации о внутренностях Windows сегодня являются книги о Windows Internals 6th Edition (два тома).
Некоторые люди просто приравнивают сложность кода к размеру, часто измеряемому в строках кода (LOC). То, как на самом деле измеряются LOC, зависит от используемых инструментов и критериев, выбранных для точного определения того, что представляет собой строка кода на каждом языке программирования. Существует много споров о методах, используемых для подсчета строк кода, но если вы используете одни и те же критерии от одного выпуска к другому, вы можете увидеть относительное изменение размера базы кода. Сравнивать эти числа с цифрами другой ОС, которая использовала другой метод подсчета строк кода, все равно что сравнивать яблоки с апельсинами.
Тем не менее, вот некоторые лакомые кусочки о размере современной кодовой базы Windows. Строки кода здесь являются приблизительными и неофициальными , но основаны на достаточно надежных источниках. Это иллюстрирует, как база кода Windows NT развивалась с 1993 года:
- Windows NT 3.1 (1993) — 5,6 миллиона строк исходного кода (MLOC)
- Windows NT 3.5 (1994) — 8,4 MLOCs
- Windows NT 3.51 (1995) — 10,2 MLOCs
- Windows NT 4.0 (1996) — 16 MLOC
- Windows 2000 (2000) — 29 MLOC
- Windows XP (2001) — 35 MLOC
- Windows Vista (2007) — 45 MLOCs
- Windows 7 (2009) — 42 MLOCs
- Windows 8 (2012) — 50 MLOCs
- Windows 10 (2015) — 55 MLOCs
Исходный код Windows состоит в основном из C, C ++ и небольшого количества кода на ассемблере. Некоторые из утилит пользовательского режима и т. д. Находятся в C # но это относительно небольшой процент от общей базы кода.
Здесь не включены 16-битные версии, выпущенные с 1985 по 2000 годы. Windows. NT была основой для всех современных 32-битных и 64-битных версий Windows. Количество строк кода в серверных версиях было таким же, как и в не серверных версиях, выпущенных в том же году (т. е. они имели одинаковую базу исходного кода).
Работа над ядром NT началась в 1988 году, она была написана с нуля как 32-разрядная превентивная многозадачная ОС. Ядро NT впервые загрузилось в июле 1989 года на процессоре Intel i860 RISC. С самого начала был сильный толчок к тому, чтобы новая ОС была переносимой на различные архитектуры ЦП и не была привязана только к архитектуре Intel x86 (IA-32). NT в конечном итоге работал на MIPS, DEC Alpha, PowerPC, Itanium и, конечно, Intel x86 и x64.
Некоторая сложность была добавлена к базе кода, прежде всего на уровне абстрагирования оборудования (HAL), для поддержки архитектур не-Intel.
Чтобы примерно было понятно посмотрите на картинку:
А вот трассировка вызовов для microsoft IIS
Насколько сложен код для Microsoft Windows?
Чтобы разобраться в этом вопросе, мы обратились к одному из разработчиков команды Windows NT в компании Microsoft — Кену Греггу (Ken Gregg).
💬 Кен Грегг (Ken Gregg), разработчик в составе группы Windows NT
« Могу сказать вам, что у меня был доступ к исходному коду, когда я был в команде Windows NT (NT является основой для всех настольных версий Windows начиная с XP), во время проектов разработки NT 3.1 и NT 3.5. Всё было в рамках стандартов кодирования NT Workbook — эдакой «библии» для всей проектной команды.
. Хотя я и не читал каждую строку кода, но то, с чем мне пришлось работать, было очень:
• чётким,
• модульным,
• многоуровневым,
• обслуживаемым ».
Нужно исходить из того, что именно понимается под сложностью кода. Это понимание сугубо субъективное, ведь так?
Вместе с тем, существует множество различных метрик, используемых и комбинируемых для измерения сложности программного обеспечения в тех или иных ситуациях (та же самая модульность, многоуровневость и обслуживаемость).
Насколько сложна Windows в плане кода
Конечно, чтобы прочитать и понять код, вам нужно было бы иметь представление об общей архитектуре Windows NT.
💡 Вероятно, лучшим источником информации о внутренностях Windows сегодня являются книги Windows Internals 6th Edition ( в двух томах ).
Некоторые люди просто приравнивают сложность кода к размеру. У этого сравнения тоже есть метрика — строки кода (LOC).
Измерение LOC зависит от используемых инструментов и критериев. Их выбирают для точного определения строк кода на каждом языке программирования.
💬 Кен Грегг (Ken Gregg)
«Существует много споров о методах, используемых для подсчета строк кода (LOC). Если использовать одни и те же критерии от одного выпуска к следующему, то получится относительное изменение размера базы кода.
Сравнивать эти числа с цифрами другой ОС, которая использовала другой метод подсчета строк кода, всё равно что сравнивать яблоки с апельсинами. То есть это некорректный подход».
Изменения Windows по размеру кода
Здесь приводятся некоторые лакомые кусочки, дающие представление о размерах современной кодовой базы Windows. Строки кода здесь являются приблизительными и неофициальными , но основаны на достаточно надёжных источниках, о которых говорит Кен Грегг .
Как база кода Windows NT развивалась с 1993 года
MLOC — это количество миллионов строк исходного кода. По ним можно определить относительную сложность операционной системы, если опираться на размеры кода (LOC-методика).
- Windows NT 3.1 (1993) — 5,6 MLOC
- Windows NT 3.5 (1994) — 8,4 MLOC
- Windows NT 3.51 (1995) — 10,2 MLOC
- Windows NT 4.0 (1996) — 16 MLOC
- Windows 2000 (2000) — 29 MLOC
- Windows XP (2001) — 35 MLOC
- Windows Vista (2007) — 45 MLOC
- Windows 7 (2009) — 42 MLOC
- Windows 8 (2012) — 50 MLOC
- Windows 10 (2015) — 55 MLOC
⚠ Исходный код Windows состоит в основном из C и C++, а также небольшого количества кода на ассемблере.
Некоторые из утилит пользовательского режима и другие подобные службы пишутся на Си Шарп , но это относительно небольшой процент от общей базы кода.
💬 Кен Грегг (Ken Gregg)
« Я намеренно не включил в список 16-битные версии ОС, выпущенные с 1985 по 2000 годы. Windows NT была основой для всех современных 32-бит и 64-бит версий Windows. Количество строк кода в серверных версиях было таким же, как и в несерверных версиях, выпущенных в том же году (то есть они имели одинаковую базу исходного кода) ».
Несколько слов про ядро Windows NT
По словам Кена, работа над ядром NT началась в 1988 году. Ядро было создано с нуля в качестве 32-разрядной упреждающей многозадачной ОС.
Ядро NT впервые загрузилось в июле 1989 года на процессоре Intel i860 RISC. С самого начала был сильный толчок к тому, чтобы новая ОС была совместимой с различными архитектурами центральных процессоров и не была привязана только к архитектуре Intel x86 (IA-32).
⚠ NT в конечном итоге работал на MIPS, DEC Alpha, PowerPC, Itanium и, конечно, Intel x86 и x64.
Некоторая сложность была добавлена в базу кода на уровне абстрагирования оборудования (HAL). Это было нужно для поддержки неинтеловских архитектур.
Как вы оцениваете перспективы Windows в плане кода?
Нужна ли кардинальная смена ядра Windows 10, чтобы стать воистину удобной и надёжной операционной системой? Или лучше окончательно инвестировать в Mac и Linux ? Напишите в комментарии ваши мысли.
Число строк кода в ms windows vista
Аппаратное и программное обеспечение
Здесь материалы об аппаратном обеспечении компьютера
Здесь материалы о программном обеспечении компьютера
Здесь материалы о поиске системной информации в компьютере
Везде вместо ФИО долж н ы быть ваши собственные Фамилия Имя Отчество !
Вызывайте поиск на странице одновременным нажатием клавиш: Ctrl + F
Создать папку Фамилия- HS , а в ней документ Word » Фамилия-SIW » , заполнить в нем Таблицу 1 :
Что такое Hardware 2.0
Что такое Random Access Memory
Назначение видеоадаптера (графической карты, videocard)
Назначение Windows Azure
Число строк кода в MS Windows Vista
названия трех утилит
Что такое п рикладное программное обеспечение
Вы полнить тест и сохранить тестовую с траницу ( на которой должен отображаться блок с результатом!) в папке Фамилия-HS как pdf-файл под именем Фамилия-тест (как сохранить: здесь).
Скопировать в свою папку архив с программой SIW и распаковать его там (с помощью контекстного меню вызываемого правым щелчком мыши).
Примечение : З агружаемые материалы Google Chrome сохраняет в папке Загрузок, доступ к которой через страницу загрузок открываемую нажатием клавиш Ctrl + J или через меню настроек.
Д войным щелчком по файлу S IW запустить на выполнение программу.
Примечение : Как в S IW установить русский интерфейс здесь
С помощью SIW заполнить в документе Word » Фамилия-SIW » Таблицу 2 :
Технология изготовления процессора
нанометры ( см. Инфо о процессоре \ Технология)
Частота процессора
( см. Инфо о процессоре \ Название процессора, там и частота в гигагерцах — GHz )
Оперативная память
Физическая память (всего / свободно)
Дисковое пространство
Диск С (всего / свободно)
Диск D (всего / свободно)
см. Видео \ VideoAdapter \ Видеопроцессор
см. Видео \ VideoAdapter \ Память
Операционная система
см. Программы / Операционная система / Название