Кіріспе

Қолданбаларды әзірлеу платформасы

Wireless үшін екілік орындалу ортасы (Brew MP, Brew, Qualcomm BREW немесе BREW) – Qualcomm компаниясы құраған, бастапқыда кодты бөлуге көп кіру мүмкіндігі (CDMA) ұялы телефондары үшін жасалған, мобильді ойындар сияқты үшінші тарап қолданбаларын қамтитын қолданбаларды әзірлеу платформасы. Ол кейбір қарапайым телефондарда (көбінесе орта және жоғары деңгейдегі ұялы телефондар сияқты сипаттамалары бар) ұсынылды, бірақ смартфондарда болған жоқ. Алғаш рет 1999 жылы CDMA негізіндегі ұялы телефондарға арналған сымсыз қолданбалар платформасы ретінде әзірленді және 2001 жылдың қыркүйегінде пайда болды. Ойын ойнау, хабарлама жіберу және фотосуреттермен бөлісу үшін кішкентай бағдарламаларды жүктеуге және іске қосуға мүмкіндік беретін бағдарламалық платформа ретінде Brew MP-нің басты артықшылығы – қолданба жасаушылар стандартталған қолданбалық бағдарламалау интерфейстерін (API) ұсыну арқылы өз қолданбаларын барлық Brew MP құрылғылары арасында оңай түрлендіре алады. Brew MP үшін бағдарламалық жасақтама C немесе C++ тілдерінде, тегін жүктеуге болатын Brew MP бағдарламалық жасақтама жиынтығын (SDK) пайдалана отырып жасалуы мүмкін. BREW орындалу кітапханасы – микросхемадағы немесе операциялық жүйедегі сымсыз құрылғының бір бөлігі, ол бағдарламашыларға жүйе интерфейсі үшін код жазудың немесе сымсыз қолданбаларды түсінудің қажеті болмай, қолданбаларды әзірлеуге мүмкіндік береді. BREW псевдо операциялық жүйе ретінде сипатталғанмен, нағыз мобильді операциялық жүйе емес. BREW, Java ME сияқты виртуалды машина емес, себебі ол кодты тікелей орындайды.

Бағдарламалық жасақтама

Бағдарламалық жасақтаманы әзірлейтін мамандар үшін Brew MP – C, C++, Java тілдерінде бағдарламалық жасақтама мен қосымшаларды құруға мүмкіндік беретін қосымша бағдарламалау интерфейстерінің (API) толық жиынтығы. Ол қосымшаға арналған интегралдық схема (ASIC) арқылы қолдау көрсетілген платформа болды. Оның жады көлемі шамамен 15 900 КБ (15,9 МБ) құрайды. 1.x нұсқасынан 2.x нұсқасына дейін (2004 жылға дейін) жады көлемі шамамен 60 КБ болды. BREW тікелей аппараттық құралдарға қолжетімділікті де қамтамасыз етеді. Brew MP-ге дейінгі нұсқалар Qualcomm-ның өз уақыт режимінде жұмыс істейтін операциялық жүйесі (RTOS) – REX OS-ке сүйенсе, ал Brew MP жетілдірілген мүмкіндіктері бар телефондарға арналған тағы бір уақыт режимінде жұмыс істейтін операциялық жүйесі (RTOS) – Brew RTOS-ты пайдаланды. Интерпретаторға негізделген кодты пайдаланудың орнына, BREW өзінің жеке мобильді аппараттық құралдарына сенді.

BREW 1.0 / 1.1 (20012003)

2001 жылы пайда болған, бұл BREW-тің алғашқы толыққанды нұсқасы болды. Алғашқыда Kyocera QCP 3035 (нарықта қол жетімді ең алғашқы BREW қолдаушы телефон) және Sharp Z 800 үшін жасалған. Ол жеке цифрлық ассистенттер деңгейіндегі мүмкіндіктерді ұсынды (әдетте, кейбір қосымшалар мен BREW қосымшаларын іске қосу үшін). Дегенмен, ол кейінгі нұсқаларда болған кеңейтілген мультимедия мүмкіндіктерінен және Java ME қолдауынан мүлдем құрылған. Бұл BREW 2.0 нұсқасында монохромды экрандарға қолдау алынып тасталғандықтан, монохромды экрандарды қолдайтын BREW-тің жалғыз нұсқасы еді. BREW 1.1 – Java ME қосымшаларын іске қоса алған Brew-тің алғашқы нұсқасы. Ол 2002 және 2003 жылдың басында BREW қолдауы бар кейбір телефондарда қол жетімді болды.

BREW 2.0 / 2.1 (20022009)

2002 жылдың ортасында жарық көрген ол, 2002 жылдың соңынан 2009 жылдың соңына дейін BREW қолдауы бар көптеген телефондарға орнатылды. Ол кеңейтілген мультимедиа ойнатуды (видео және аудио файлдарды ойнату мүмкіндігі, сондай-ақ 3GPP мультимедиа форматтарына қолдау), EV-DO және Bluetooth қолдауын, экран сақтағыштарын және басқа да жақсартуларды қамтиды. Бұдан басқа, ол BREW 2.1 платформасында MIDP 2.0 стандартын қолдайды және BREW 1.x қолданбаларымен үйлесімді. 2004 жылдан бастап Индонезия, Қытай және басқа елдердегі көптеген қарапайым телефондарға орнатылып, 2017 жылға дейін бірнеше байланыс операторлары қолдады.

BREW 3.0 / 3.1 (20042012)

2002 жылдың ортасында жарық көрген ол, 2004 жылдың соңынан 2012 жылдың басына дейін BREW қолдауы бар көптеген телефондарға орнатылды. Бұл BREW нұсқасының алғашқы, маңызды өзгерістер енгізілген және WiFi қосылымы, OpenGL ES 1.0, 3G, GPS, QWERTY пернетақтасы және 176x220 ажыратымдылығынан жоғары экрандарды қолдайтын, кең мүмкіндіктер жинағына ие болды. Ол BREW 2.x қолданбаларымен кері үйлесімді, бірақ BREW 1.x қолданбаларымен емес. Сонымен қатар, ол 3D графиканы көрсетуді қолдайтын BREW-дің алғашқы нұсқасы, бірақ ол бағдарламалық тәсілмен жүзеге асырылады (Java ME ойындары үшін JSR 184 та қолданады). Егер 3D үдеткіш чипі болса, аппараттық үдету OpenGL ES 1.0 арқылы да қолдауға ие. 2005 жылдан бері ол АҚШ және басқа елдердегі көптеген қарапайым телефондарға орнатылды және әлі де бірнеше операторлар қолдайды.

BREW 4.0.1-4.0.2 (2007-2011)

2007 жылдан 2011 жылға дейін қолданылған, ол өте сирек кездесетін ұялы телефондарға (мысалы, LG enV Touch және LG Versa) ғана орнатылған. Онда аз ғана жақсартулар болды және кейіннен Brew MP ізбасары болды. Акселерометрді қолдау және басқа өзгерістер сияқты, Brew MP-де де бар қосымша мүмкіндіктерге ие. Сондай-ақ, ол Мексика мен Бразилияда Zeebo консолінде де қолданылды.

Brew MP 1.0.1 - 1.0.4 (20092021)

Brew 5.0 2009 жылы бірнеше жаңа мүмкіндіктермен (соның ішінде SVG суреттері) шығарылды және BREW 3.x және 4.x нұсқаларымен үйлесімді болды. Осы нұсқада кейбір ескі API-лар қолданыстан шығарылды. Бұл жаңалық BREW-тің өз реалды уақыт ядросына көшуін белгіледі, бұрын Qualcomm-ның REX OS-і қолданылып келген. Brew MP әзірлеушілер беті сегіз жылдық үзілістен кейін 2021 жылдың 23 шілдесінде жабылды.

BREW бағдарламасын әзірлеу

Даму процесінде қолданбаларды сынау үшін SDK құрамына BREW эмуляторы немесе BREW 1.1 және одан жоғары нұсқаларынан бастап BREW Simulator кіреді. BREW ортасы бірнеше деңгейдегі қолданба қолтаңбаларын қамтамасыз етеді. Бір қолтаңба әзірлеушінің шынайылығын растайды. Тағы бір қолтаңба бағдарламаның True BREW тестілеуінен өткенін және Intertek арқылы берілгенін растайды. Телекоммуникация операторлары телефондарды осы екінші қолтаңбаның болуын және тексерілуін болдырмау немесе жоққа шығару үшін конфигурациялайды. BREW-ті қолданатын телефондарда сынақ режимі бар, ол қолданбаларға қолтаңбаны тексеруді болдырмауға мүмкіндік береді. Qualcomm сынақтан өткен қосымшаларды BREW-ті қолданатын сымсыз желі операторларына ұсынады. Операторлар осы қосымшалардың қайсысын өз каталогында соңғы пайдаланушыларға ұсынуды таңдай алады. BREW-тің жеке қолтаңбалары Электрондық сериялық нөмірмен (ESN) және Мобильді жабдықтың идентификаторымен (MEID) қорғалады, бұл BREW қосымшаларын тасымалдаушыларға емес, үшінші тараптарға рұқсатсыз таратуды / жүктеуді болдырмайды дегенді білдіреді. Қолданба BREW-ге негізделген тасымалдаушы арқылы OTA-да жүктелгеннен кейін, sig файлы автоматты түрде орнатылған телефонына электрондық сериялық нөмірді жасайды. BREW эмуляторы, BREW Simulator деп аталады, ол телефонның аппараттық құралын эмуляцияламайды. Оның орнына BREW қосымшасы түпкі кодқа компиляцияланады және үйлесімді BREW орындалу уақытында кітапханамен байланыстырылады. Осыған байланысты, BREW телефоны тест режимінде жұмыс істемегенде, бағдарламаларды жадты сәйкестендіруге байланысты платформалық қателер мен әртүрлі бағдарламалық құралдарға байланысты ақаулар үшін сынауға болмайды. Сынақ жүргізу үшін BREW қосымшаларын Universal Serial Bus (USB) немесе сериялық кабель арқылы Qualcomm-ның BREW App Loader-ін қолдана отырып, кез-келген BREW-ге үйлесімді ұялы телефонға көшіруге болады. BREW бағдарламасында бірнеше компоненттер бар, егер олар жоқ болса және жарамды болмаса, бағдарлама қайта жүктелу кезінде автоматты түрде жойылады. Бұл құрастырылған екілік файлды, қолданбаны, оның пайдаланатын мүмкіндіктерін және сұралған рұқсаттарды сипаттайтын файлды, қажет болған жағдайда тізбекті және бейне ресурстарын қамтитын файлды және қолданбаның цифрлық қолтаңбасын қамтитын файлды қамтиды. BREW бағдарламаларын тұтынушының ұялы телефонынан жүктеу арқылы ұялы телефон жадында орын үнемдеуге болады. Бұл "Тоқтату/Қалпына келтіру" деп аталады және True BREW сынақ процесінің талабы болып табылады. Сақталған файлдар Тоқтату/Қалпына келтіру арқылы сақталады және қосымшаны қайта жүктеу үшін ақы төлемей-ақ болады. "Тоқтату" жағдайында барлық bar, mod және sig файлдары телефоннан жойылады, ал басқа файлдар бастапқы орнында қалады. "Қалпына келтіру" операциясы кезінде bar, mod және sig файлдары оператордың мобильді дүкенінен жүктеледі, ал бұрын тоқтатылған қосымшаның толық функционалдылығы сақталады. Тоқтату/Қалпына келтіру процесі тұтынушы пайдаланушыларға тек телефонда жады толған кезде ғана қол жетімді. 2008 жылдың 28 мамырында Qualcomm және Adobe компаниясы Adobe Flash Lite бағдарламасын BREW бағдарламасына қолдау көрсететін пайдаланушы интерфейсі ретінде қосу бойынша серіктестік туралы жариялады. 2006 жылдың наурызынан бастап әзірлеушілер үшін ең арзан цифрлық қолтаңба пакеті 100 өтінімді тапсыру үшін 400 АҚШ долларын құрайды.

Бизнес-модельдің әсері/жекеменшік

Нақты айтқанда, Qualcomm BREW-тің қатаң сертификаттау талаптарына байланысты BREW-ті Java ME-ге қарағанда нарыққа шығару уақыты көбірек болуы мүмкін. Бұл сертификаттау процесі белгілі бағдарламалық қамтамасыз ету әзірлеушілері үшін артықшылық болып көрінуі мүмкін, себебі сынақ жүргізу және әзірлеуге байланысты туындайтын қиындықтар, аз бюджеті және уақыты бар әзірлеушілер үшін кіруге жоғары баға белгілейді, нәтижесінде нарықта бәсекелестік азаяды. Атап айтқанда, қарапайым ойындарды әзірлейтін компаниялар, хобби деңгейіндегі адамдар жасаған және өздері жариялаған тегін бағдарламалармен бәсекелесу қаупін азайтады. Дегенмен, бұл соңғы пайдаланушы үшін кемшілікке айналады, өйткені ең төмен бағамен ең жақсы шешімді табу үшін бәсекелестік төмендейді. Қолданба жазылғаннан кейін, True BREW тестілеуінің әрбір итерациясына екі апта уақыт кетеді (қолданба сынақтан өтпеген сайын). Содан кейін операторлармен келіссөздер басталады. Сәтті аяқталған жағдайда оператор өз желісінде қолданбаны өз сынақтарынан өткізуге уақыт жұмсайды. Ақырында, жаңа нұсқаны шығару процесті бастапқы нүктеден қайтадан жүргізуді білдіреді.

Java ME мен BREW арасындағы айырмашылықтар

Қазіргі уақытта көптеген әзірлеушілер Java ME және BREW-ді, немесе тек Java ME-ді қолдауды таңдайды. Java ME нарыққа төмен құнмен шығуы мүмкін, себебі көптеген операторлар сертификатталмаған Java ME қолданбаларын өз телефондарында іске қосуға рұқсат береді. Java ME телефондарының нарықтағы үлесі BREW қолдайтын телефондардан жоғары. Java ME Еуропада кеңінен қолданылады, ал BREW негізінен АҚШ және Жапонияда қолданылады. BREW-тің бастапқы артықшылықтарының бірі – Verizon телефоннан қолданбаларды сатып алуды оңайлатқандығы, ал көптеген Java ME операторлары мұндай мүмкіндік бермеді. Дегенмен, қазір Java ME телефондарының көптеген операторлары қолданбаларды сатып алуға ыңғайлы порталдар ұсынады. Өздігінің ерекше API-ларына байланысты, Java ME Java виртуалды машинасына (интерпретаторлық кодқа) сүйенеді, ол техникалық тұрғыдан BREW-ден баяу, ол C/C++ және тікелей аппараттық қолжетімділікті (әсіресе ойындар үшін) пайдаланады. Java ME қолданбалар мен ойындар үшін API-лердің шектеулі жиынтығына ие. Алайда, үшінші тарап API-лары мен іске асырулары (мысалы, HI CORPORATION-ның MascotCapsule (3D рендеринг API) және NTT Docomo-ның DoJa/Star) бар, бірақ олар Жапониядан тыс жерлерде кеңінен танымал емес және сәттіліктері шектеулі (әсіресе құрылғыларды қабылдау тұрғысынан). BREW (керісінше) өзінің API-ларына және тікелей аппараттық қолжетімділігіне сенеді. Java ME қолданбалары мен ойындарының жұмыс істеу жылдамдығы BREW-ге қарағанда төмен. 3D ойындар үшін Java ME JSR 184 (M3G) қолданады, Java ME-де жасалған 3D ойындардың жылдамдығы төмен (кейбір телефондарда секундына 10 кадрға жетеді) және графикалық мүмкіндіктері шектеулі, ал BREW бағдарламалық рендерингті (егер BREW телефонында 3D үдеткіші болмаса) немесе OpenGL ES-ті (оның мүмкіндіктерін пайдалана алады) қолданады. Java ME-ден айырмашылығы, BREW қолданбасы қателікке ұшырағанда телефон қайта жүктеледі, себебі BREW қолданба қателікке ұшырағанда оны өңдеуге және қалпына келтіруге қабілетсіз, соның салдарынан каталогтың түбір бөлігіндегі "except" папкасына "$SYS.EXCEPT (4 таңбалы сан)" файлы жасалады, содан кейін телефон автоматты түрде қайта жүктеледі. Ал Java ME қолданбасы BREW астында қателікке ұшырағанда, Java ME оны дұрыс басқарады және телефонды қайта жүктеуден қалпына келтіреді. Кейбір телефон өндірушілері Java ME виртуалды машинасының бірнеше телефондарында жұмыс істеуіне рұқсат бермейді. Қазір Java ME-ден BREW-ге көшіруді толық автоматтандыруға арналған коммерциялық технологиялар бар. Бұл Java және C/C++ тілдерінде бірдей қолданбаның екі нұсқасын жасау қажеттілігін жою арқылы BREW қолданбаларын жасауға қадам жасауды жеңілдетеді.

Жүйелік ақау

BREW жүйесіндегі ақаулық компоненттердің қалыпты жұмыс істемей қалуы, BREW қолданбасы үшін қажетті файлдың жоғалтылуы, қолданбаның құлауы немесе басқа да қателердің нәтижесінде туындайды. Ол каталогтың түбіріндегі "except" папкасында "$SYS.EXCEPT XXXX" файлына әкеледі. BREW жүйесінің ақаулығының екі түрі бар: компоненттік қате және қайта жүктеудің сәтсіздігі.

Құрылғының қатесі (мысалы.c XXXXX)

Компоненттік қате – бұл компонент дұрыс жұмыс істемей қалғанда, шамамен 5 секундқа қате мәтіні бар қара, ақ немесе көк экранды көрсетіп, содан кейін телефон өзінен-өзі қайта жүктелетін қате. Бұл қате сіздің әрекеттеріңізге байланысты өзгеруі мүмкін, мысалы:

fs dir. c (файл жүйесі қатесі)
mdsptask. c (тапсырма қатесі)
oemheap3x. c (жад бұзу)
memory. c (жадтың зақымдануы)
nvm. c (NVM тексеруі бұзылуы)
srch mdsp. c (индекс қатесі)
callheap. c (шақыру қатесі)

Бұл түрдің пайда болу ықтималдығы өте төмен, себебі «өлімдік қайта жүктеу» жиі кездеседі. Осы түрді тудыруға болатын әрекеттердің мысалы:

Телефон жұмыс істеп тұрғанда кернеуді төмендету, бұл жадтың зақымдануына әкеледі (әдетте батареясы толық бос болғанда, қазіргі құрылғыларда кернеуден қорғау қосылған) (мысалы, LG VX10, LG VX4400 және LG PM225).
Телефон зақымдалған. Әдетте, мұндай жағдайда телефон компоненттік қате көрсетудің орнына «өлімдік қайта жүктеуді» іске қосады. «brew», «nvm» немесе «.efs жеке» папкасы жойылған. (fs dir. c немесе nvm. c)

Өлімді қайта іске қосу

Өлімнің қайта жүктелуі – мәтінмен қара, ақ немесе көк экранды көрсету орнына телефонды өздігінен қайта жүктететін қате. Осы түрінің пайда болу жиілігі әлдеқайда жоғары. Осы түрін тудыруға болатын мынадай жағдайлар:

Қолданбаның істен шығуы. R UIM картасын шығарып алу. Телефонның зақымдалған күйде болуы. SP кодын қате енгізу. Файлдарды қажет ететін қолданбаның жоқтығы. Инженерлік режимде қателіктерді тексеруді іске қосу.

Құрылғыны пайдалану және тасымалдаушының болуы

Qualcomm BREW кейбір ұялы телефон өндірушілер мен ұялы желілерде қолданылады, бірақ көбінесе соңғы пайдаланушы бұл туралы білмейді, себебі BREW-ді қолдайтын ұялы телефондарда Qualcomm BREW таңбасы болмайды және BREW ұялы телефон өндірушісінің немесе оператордың жекелендірілген "терісінің" астында жұмыс істейді. Qualcomm BREW-ді Sprint Nextel, metroPCS, U.S. Cellular, Verizon, Syringa Wireless, Cricket Wireless және AT&T (HTC Freestyle) АҚШ-та, KDDI Жапонияда, KT және SK Telecom Оңтүстік Кореяда, China Telecom Қытайда, MOVILNET және BellSouth Chile Латын Америкасында, Sistema Shyam (қазіргі MTS) Үндістанда, ал 3 желісі Еуропаның көп бөлігінде, Ұлыбританияда және Австралияда көптеген ұялы телефондарда пайдаланады. BREW тек CDMA желісінде жұмыс істейтін ұялы желілерге ғана ұсынылатындықтан, басқа елдерде (Еуропаның, Ұлыбританияның және Австралияның 3 желісі, Үндістан, Жапония және Қытайдан басқа) BREW жоқ, себебі онда CDMA желісі жоқ. Huawei, INQ Mobile, Amoi, LG, Samsung Mobile, ZTE және HTC сияқты өндірушілер өз ұялы телефондарының кейбірінде Qualcomm BREW-ді қолданады және ол 3 Ұлыбритания телефондарында, мысалы 3 Skypephone, INQ1, ZTE Z431 және Huawei u7510 (3 Touch) моделінде қолданылады. Tectoy компаниясының Zeebo ойын консолі – BREW-ді қолданатын жалғыз құрылғы. Motorola компаниясының T720 және RAZR V3m модельдері де Qualcomm BREW-ді қолданады.