Введение
Комплект разработки программного обеспечения для Xbox
Комплект разработки программного обеспечения Xbox (XDK) — это комплект разработки программного обеспечения, созданный компанией Microsoft для разработки программного обеспечения для игровой консоли Xbox 2001 года выпуска. XDK включает в себя библиотеки, компилятор и различные инструменты, необходимые для создания программного обеспечения для Xbox. XDK может быть интегрирован в Microsoft Visual Studio 2002 или 2003. Это требуется для разработки приложений и игр для Xbox. XDK также содержит инструмент для записи игрового видео, который широко используется для создания высококачественных скриншотов и трейлеров.
Цель
XDK позволяет разработчикам программного обеспечения создавать, запускать и распространять приложения на платформе Xbox. XDK для Xbox 360 были основаны на всех трех поколениях дизайна Xbox 360 ("Phat", "Slim" и "E"). XNA Kits (использовались на некоторых выставках и предоставлялись игровым студиям), Stress Kits (использовались для тестирования производительности Xbox 360 и различных условий, таких как понижение и повышение напряжения, и выдавались исключительно разработчикам Microsoft) и Demo Kits (использовались для демонстрации игр). Некоторые, но не все, XDK включали в себя дополнительный модуль, который эмулировал DVD-привод и функционировал как жесткий диск, а в более ранних версиях XDK с устаревшими прошивками – для отладки PIX. В комплекте с XDK поставляется SDK для Xbox 360, предназначенный для подключения к консоли, редактирования памяти, управления файлами и интеграции с Visual Studio 2010 для разработки игр для Xbox 360.
Окружение разработки Xbox
BIOS Xbox основан на ядре NT 5.0, но не обладает всеми ресурсами и возможностями операционной системы Windows 2000 (например, DirectShow, реестр и DLL не поддерживаются на Xbox изначально). В связи с ограничениями аппаратного обеспечения и среды Xbox, вся разработка программного обеспечения для Xbox (и для игровых консолей в целом) направлена на эффективное использование ограниченных ресурсов, основным из которых является объем доступной оперативной памяти.
Встроенная операционная система Xbox
У Xbox нет операционной системы в привычном понимании, вместо этого в ней используется простой BIOS. Все остальное необходимо включать в основной исполняемый файл и его библиотеки (XDK и собственные разработки). На Xbox одновременно может выполняться только один процесс (исполняемая программа). Файловая система жесткого диска Xbox (FATX) имеет множество ограничений, включая максимальную длину имени файла в 42 символа. Xbox оснащен четырьмя нестандартными USB-портами, однако Xbox SDK не содержит полноценного стека USB, поэтому для добавления поддержки USB-устройств разработчику придется самостоятельно реализовать весь стек USB с нуля.
Ограничения программного обеспечения XDK и Xbox
Это список ограничений XDK, оборудования Xbox и операционной системы Xbox. Ограничение файловой системы UDF (Universal Disk Format): Xbox поддерживает только версию UDF 1.02 (предназначенную для DVD Video), максимальный размер файла в которой составляет 1 ГБ (гигабайт) (DVD-диск в более новой версии UDF с видео размером более 1 ГБ не будет воспроизводиться), что также относится к гибридным форматам UDF/ISO (также известным как формат UDF Bridge). В качестве обходного пути можно использовать запись дисков в формате ISO 9660. Формат ISO 9660 имеет максимальный размер файла 2 ГБ, который нельзя превысить. Класс USB-накопителей, используемый операционной системой Xbox, также имеет ряд ограничений. Он поддерживает только USB-флеш-накопители и жесткие диски, совместимые с классом устройств USB Mass Storage Device, соответствующих стандарту USB 1.1, и максимальным объемом 4 ГБ. Он может читать и записывать на флеш-накопители, отформатированные в FATX, но может только читать FAT12, FAT16 (включая VFAT) и FAT32. Диски, отформатированные в NTFS, пока не поддерживаются. Благодаря процессору, аналогичному Intel Pentium III с частотой 733 МГц, и 64 МБ общей памяти, Xbox не обладает достаточной вычислительной мощностью и объемом оперативной памяти для воспроизведения HDTV-видео, закодированного в собственном разрешении 720p/1080i. Однако Xbox может масштабировать все фильмы стандартного разрешения и выводить их в разрешении 720p или 1080i.