Извлечь название выпуска macOS из версий Darwin / XNU - PullRequest
0 голосов
/ 01 июля 2018

Существует ли какое-либо уравнение для получения версии macOS (10.X) из соответствующей версии darwin или версии xnu (без предварительно определенной таблицы для каждой версии)

Например, в macOS Mojave (10.14) у нас есть следующее содержимое:

darwin version 18.0.0
xnu version 4903.200.249

А в macOS high sierra (10.13) имеем:

10.13.3: xnu-4570.41.2  darwin version 17.4.0   
10.13.2: xnu-4570.31.3  darwin version 17.3.0   
10.13.1: xnu-4570.20.62 darwin version 17.2.0
10.13:   xnu-4570.1.46  darwin version 17.0.0   

Итак, я сделал вывод, что номер Major в версии Darwin уникален для каждой версии ОС:

..
16->10.12,
17->10.13, 
18->10.14, 
..

Мое предположение верно?

Ответы [ 2 ]

0 голосов
/ 03 сентября 2018

Уравнение правильное. Чтобы охватить все * варианты ОС, вы должны использовать:

Пусть D = версия Дарвина

MacOS = 10. (Д-4) TvOS = iOS = (D-6) WatchOS = (D - 13)

И миноры обычно выравниваются, если, как отмечено в pmdj, для исправлений нет приращений.

Если вам нужна точная версия MacOS (или * вариант ОС) с незначительной, без догадок, единственное место, где она действительно «живет», находится в /System/Library/CoreServices/SystemVersion.plist. Ключ ProductVersion (и, в MacOS, ключи ProductUserVisibleVersion - это ключи, о которых сообщается в графическом интерфейсе и в других местах. Номер версии MacOS не имеет реального значения где-либо в ОС.

0 голосов
/ 01 июля 2018

Да, это правильно для основных номеров версий. Младшие версии иногда увеличиваются, даже если ревизия macOS этого не делает, и наоборот, как в случае с 10.13.1, где младшая версия darwin увеличивается на 1 для выпуска безопасности и снова для 10.13.1.

...