Кіріспе

Free60 – бағдарламалық немесе аппараттық негіздегі «хак» арқылы Microsoft Xbox 360 құрылғысына Linux, BSD немесе Darwin жүйелерін орнатуды мақсат ететін Xbox Linux жобасының жалғасы. Xbox 360 аппараттық шифрлауды қолданады және бастапқыда қолтаңбасы жоқ кодты іске қоспайды. Жобаның мақсаттары 2007 жылдың наурыз айында орындалды, Xbox 360 Hypervisor-ындағы маңызды бағдарламалық осалдық туралы хабарланғаннан кейін Linux жүктегіші пайда болды, ол Xbox 360-қа портталған Linux-ты іске қосуға мүмкіндік берді. Қазіргі таңда Linux ядросының екі түзету жинағы бар: 2.6.21 және 2.6.24.3 нұсқаларына арналған. Xbox 360-та үш негізгі Linux дистрибутивін пайдалануға болады: Gentoo, Debian және Ubuntu Linux. Соңғы екеуін Free60 жобасының мүшелері ұсынған скрипттер арқылы Xbox 360 қатты дискісіне оңай орнатуға болады.

Орындау әдісі

Xbox 360-тағы орындалатын код цифрлық қолтаңбаланғандықтан және гипервизордың астында жұмыс істейтіндіктен, үй жасаған кодты іске қосу үшін эксплойт немесе хак қажет. Xbox 360-та қолтаңбасыз кодты іске қосуға мүмкіндік берген алғашқы эксплойт, модификацияланған DVD ROM дискінің микропрограммасына, King Kong ойынының модификацияланған жазылған дискісіне (Xbox 360 үшін) және консольдің екі осал ядролық нұсқасының біріне негізделген. Балама ретінде, үйде жасалған кабельді консольдің аналық платасындағы тиісті қосқыштарға жалғанған джемперлермен BIOS-ты құйып, жаңартуға және гипервизорды түзетуге, сондай-ақ тікелей жүктеу кезінде қолтаңбасыз орындауға болады, бұл "JTAG/SMC эксплойты" деп аталады, ол 2009 жылдың маусымынан кейін түзетілді, бірақ 2011 жылы "Reset Glitch Hack" деп аталатын нұсқамен ауыстырылды. Бұл эксплойт Xbox 360 аналық платасының кез келген ядролық нұсқасында қолданылады, бірақ ең соңғы нұсқасында емес (2014 жылдан бастап 2015 жылы өндіріс тоқтағанға дейін шығарылған көптеген 360 консольдері). Бір ескерту – бұл глюк негізінде жұмыс істейді және уақытқа тәуелді, сондықтан жүктелу уақыты тұрақсыз болуы мүмкін. King Kong эксплойтінің бастапқы нұсқасында консоль өзгертілген ойынды іске қосуы керек, ол бағдарламалық осалдықты пайдаланып, дискідегі кішкентай код бөлігін жүктейді. Бұл код консольге қосымша кодты жүктеуге мүмкіндік беру үшін серийлік портты инициализациялай алады немесе дискіні шығарып, консольді оптикалық тасымалдағыштан белгілі бір нүктеден қосымша кодты жүктеуге дайындай алады, содан кейін дискіге салынуы керек. Соңғы әдіс readcd бинарлық файлымен байланысты, ол осы мақсат үшін арнайы жасалған. Бұл жағдайда readcd орындайтын код XeLL деп аталады, бұл Xenon Linux Loader-дің аббревиатурасы. XeLL процессорлық тізбектерді басып алады және Linux ядросын желіден (tftp) немесе оптикалық тасымалдағыштан ғана іске қосады, ядро үшін тегіс құрылғы ағашын қамтамасыз етеді. Шығарылған "Live CD" жағдайында readcd бинарлық файлы әдетте өзгертілген ойын дискісіне қосылады, ол дискіні шығарып, XeLL бинарлық файлымен, сондай-ақ толық Linux ядросымен және файлдық жүйемен CD дискісін енгізуге мүмкіндік береді.

Шектеулер

Readcd әдісі бастапқыда Hitachi брендті DVD ROM дискілерімен ғана шектелген, бірақ қазір Samsung брендті дискілерді де қолдайды. Қалған барлық коммерциялық дискілер қолдаусыз деп есептеледі, қазіргі таңдағыда қолданыстағы басқа дискілер тек BenQ және Lite ON компанияларында ғана өндіріледі. Xbox 360-тың өзінде ескі Kernel нұсқасы қажет, оны табу қиын болуы мүмкін, себебі Xbox Live қызметіне қосылу консольге жаңартуларды жүктейді, сондай-ақ көптеген ойындарды ойнату үшін алдымен жаңартуларды орнату қажет. Бұл шектеу бұрынғыдан кем маңыздырақ, өйткені екі пайдаланылатын Kernel-дің соңғысынан жоғарырақ Kernel нұсқасын уақыттық шабуыл арқылы төмендетуге болады. Қазіргі уақытта консольдің ішкі аудио жабдығын қолдау үшін арнайы аудио драйверлер жазылмаған, бірақ USB аудио құрылғысын пайдалануға болады. Кейбір кодектер қолданыстағы дисплей драйверімен үйлесімсіз, сондықтан кейбір бейнелер ойнатылмайды. Бұған қоса, фреймбуфер және кэш проблемалары салдарынан ойнатылатын бейнелер кэш толып қалғаннан кейін алғашқы секундтардан бастап ұшып-құлақтап ойнайды.

Даму

Free60 жобасының маңызды қатысушыларының бірі Linux жүйесінде Xbox 360 GPU-сында (Xenos кодовый атымен белгілі) 3D графиканы жеделдету әдісін жасады. Бұл жұмыс пайдалануды жеңілдету үшін API түрінде ұйымдастырылды. Бұл жеделдетуді іске асыру үшін Xbox 360 флэш-жадының бір бөлігі Xenos GPU-ға жүктелген болуы керек. Бұл процесті автоматтандыру, кез келген 3D графикалық жеделдетудің заңдылығын қамтамасыз етуге көмектеседі. Қазіргі уақытта Xbox 360 консольдерінің шағын бөлігі ғана қолтаңбасыз кодты орындай алады, сондықтан Free60 жобасында соңғы кезде даму баяулады. Бұл, белгілі бір дәрежеде, Free60-тың алдыңғы жобасы – Xbox Linux жобасымен салыстырғанда, Xbox-та қолтаңбасыз кодты орындаудың және x86 кодты Xbox-тың Intel Pentium III негізіндегі процессорына ауыстырудың салыстырмалы оңайлығының нәтижесінде болды, ол жобада көп дамуға әкелді. Free60 жобасының мүшелері дамуды жалғастыру үшін көмек іздеп жатыр. Ең маңызды сұраныс – аудио драйверлерін ұсыну; Free60 мүшелері ALSA ядросының компонентін және SiS966 негізіндегі аналық платаны жақсы білетін адамды іздеп отыр. Free60 жобасының табысының нәтижесінде Kernel Rebooter жобасы құрылды. Оның мақсаты – әуелде осал ядроны жүктегеннен кейін және оны жүйеге бақылау алу үшін пайдаланғаннан кейін, консольді өзгертілген, қолтаңбаланбаған гипервизор мен ядроға қайта жүктеуге мүмкіндік беру. Жаңа ядролық нұсқаға қайта жүктеу мүмкіндігі, осы ядролық нұсқаларға тәуелді ойындарды консольде орындауға жол береді. Бұл жоба белгілі бір деңгейде сәттілікке жетті; гипервизорды ішінара қайта жүктеуге арналған екілік файлдар бар (сериалды жүктеуші немесе readcd арқылы іске қосылады).

Xbox Live жаңартуы 2009 жылдың жазы

2009 жылдың 11 тамызында Microsoft Xbox 360 бағдарламалық жасақтамасын жаңартып шығарды, ол жүйенің екінші деңгейдегі жүктеуішін жаңартады. Осы жаңарту кезінде кез келген қателік туса, Xbox 360 жөндеуге келмейтіндей зақымдануы мүмкін. Басқа жүйелердегі статистика көрсеткендей, мың жүктеуіш жаңартудың бірі қате аяқталып, егер Microsoft-тың бұл мәселеге ерекше шешімі болмаса, ондаған мың Xbox құрылдары қауіпке ұшырауы мүмкін. Бұл жаңарту Free60 жобасына бұрыннан белгілі болған осалдықты жою мақсатымен шығарылған болып көрінеді. Бұл осалдық сәтті пайдаланылып, кез келген кодты іске қосуға қол жеткізілді, сондай-ақ толыққанды, пайдаланушыға ыңғайлы хак әзірленіп, жақын арада free60.org сайтында жариялануы жоспарлануда. Бұл пайдаланушыларға өз Xbox құрылдарының бақылауын қайтаруға және консольді қосқаннан кейін, modchip қажеттілігінсіз, үйде жасалған қосымшалар немесе Linux сияқты кез келген кодты іске қосуға мүмкіндік береді, соның арқасында Xbox 360 бастапқы Xbox сияқты хакерлікке бейім болады. Жаңартудың қауіптілігі мен үйде жасалған қосымшаларға қол жеткізудің тоқтатылуына байланысты, Free60 жобасы барлық Xbox 360 пайдаланушыларына жүйелерін бағдарламалық жасақтаманың соңғы нұсқасына жаңартпауға кеңес береді. Free60 сайты осы мәселе бойынша соңғы ақпаратты, соның ішінде хакерлік бағдарламаны ұсынады.