Как начать писать собственную мобильную ОС для процессоров ARM?

Я заинтересован в создании собственной мобильной ОС. Я читал, что существующие мобильные ОС работают на процессорах ARM и используют их язык ассемблера, а настольные ОС, такие как Linux и Windows, написаны на ассемблере. С, кажется, язык, общий для обоих. Это приводит меня к некоторым вопросам:

Нужно ли изучать язык ассемблера ARM, если я хочу создать собственную мобильную ОС, ориентированную на процессор ARM Cortex?

Если так, то как только я начну это делать:

Где / как это проверить? Может ли он работать на виртуальной машине?Есть платы типа Beagleboard, но я не понимаю, зачем мне их покупать, если я могу использовать виртуальную машину - я что-то здесь упускаю?Может ли одна ОС работать на x86 и ARM?

Я уверен, что хочу создать мобильную ОС, которая может работать на процессорах ARM, как и большинство существующих мобильных ОС.

Какими должны быть мои первые шаги? Поможет ли это посмотреть на проекты с открытым исходным кодом, такие как Android или любую другую ОС?Где я могу найти ресурсы ассемблера ARM и интегрированные среды разработки?

Ответы на вопрос(1)

Ваш ответ на вопрос