Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. Àâòîð: Mario79
  2. xx.01.2006 - íàáîð ñòàòüè
  3. 20.03.2006 - ïóáëèêàöèÿ ñòàòüè
  4. 23.03.2006 - èñïðàâëåíèå è äîïîëíåíèå ñòàòüè
  5. 26.02.2007 - ïåðåðàáîòàíî è äîïîëíåíî â ñâÿçè ñ èçìåíèâøèìèñÿ ðåàëèÿìè
  6.  
  7. Çàãðóçêà ÎÑ Êîëèáðè ñ USB Flash Drive
  8. Íà ñåãîäíÿøíèé äåíü ÎÑ Êîëèáðè íå èìååò ïîääåðæêè USB óñòðîéñòâ íà óðîâíå ñàìîé ñèñòåìû, ïî ýòîé ïðè÷èíå äëÿ çàïóñêà ñ USB Flash íàêîïèòåëåé ïðèõîäèòñÿ èäòè íà îïðåäåëåííûå õèòðîñòè.
  9. Ñóùåñòâóåò 2 èçâåñòíûõ ñïîñîáà çàïóñòèòü ÎÑ Êîëèáðè ñ «ôëåøêè».
  10.  
  11. 1) Ýìóëÿöèÿ ôëîïïè äèñêà â BIOS.
  12. Ìåòîä ïðîñò äî òóïîñòè íà «ôëåøêó» çàïèñûâàåòñÿ IMG îáðàç, ñ ïîëíîé ýìóëÿöèåé, òî åñòü 0 ñåêòîð IMG îáðàçà ñòàíîâèòñÿ 0 ñåêòîðîì «ôëåøêè», è òàê äàëåå ïîêà âñå ñåêòîðà îáðàçà íå áóäóò ñêîïèðîâàíû íà íàêîïèòåëü. Èç íåäîñòàòêîâ ýòîãî ñïîñîáà ñðàçó ìîæíî çàìåòèòü ïîòåðþ ðàáî÷åãî ïðîñòðàíñòâà âûøå 1,44 Ìá. Îñîáåííî îáèäíûì ýòî ÿâëÿåòñÿ äëÿ íàêîïèòåëåé, åìêîñòü êîòîðûõ íàìíîãî ïðåâûøàåò ýòîò ðàçìåð.
  13. Êàê ïðîèçâîäèòñÿ òàêàÿ «óñòàíîâêà» ñèñòåìû â ðàçíûõ îñ:
  14. à) ÎÑ Linux îïèñàíèå ìîæíî ïîëó÷èòü, ââåäÿ â êîíñîëè êîìàíäó man dd
  15. á) ÎÑ Windows çàïèñü ìîæíî ïðîèçâåñòè ñ ïîìîùüþ ïðîãðàììû WinHex (èëè àíàëîãè÷íîé), êîïèðîâàíèåì 2880 ñåêòîðîâ ñ äèñêà A (floppy disk) íà äèñê, êîòîðûé ÿâëÿåòñÿ Flash íàêîïèòåëåì, íà÷èíàÿ ñ 0 ñåêòîðà.
  16. â) DOS ìîæíî ïðîñòî îòôîðìàòèðîâàòü ýìóëèðóåìîå óñòðîéñòâî, ðàçóìååòñÿ, åñëè ýòî ïîçâîëÿåò BIOS ìàòåðèíñêîé ïëàòû êîìïüþòåðà.
  17.  
  18. 2) Ýìóëÿöèÿ Flash íàêîïèòåëÿ êàê æåñòêîãî äèñêà â BIOS.
  19. Çäåñü íàäî ñäåëàòü ïîÿñíåíèå: äàæå åñëè âàø BIOS ýìóëèðóåò «ôëåøêó» êàê ôëîïïè äèñê ýòî ñîâñåì íå îçíà÷àåò, ÷òî âû îãðàíè÷åíû ðàçìåðàìè ôàéëîâîé ñèñòåìû FAT12, êîòîðàÿ â îñíîâíîì ïðèìåíÿåòñÿ íà ôëîïïè äèñêàõ è èìååò îãðàíè÷åíèå íà ðàçìåð îêîëî 4 Ìá.
  20. Íà ïðàêòèêå ýòî îçíà÷àåò, ÷òî îòôîðìàòèðîâàííûé â FAT16 íàêîïèòåëü áóäåò çàìå÷àòåëüíî âèäåòüñÿ êàê ôëîïïè äèñê ñ ðàçìåðîì äî 2 Ãá. Ê ñîæàëåíèþ, âñå ìîè ïîïûòêè çàãðóçèòüñÿ ñ ïðèìåíåíèåì ôàéëîâîé ñèñòåìû FAT32, êîòîðàÿ ïîçâîëèëà áû íà ïîëíûé ðàçìåð èñïîëüçîâàòü USB Flash íàêîïèòåëè ðàçìåðîì áîëåå 2 Ãá, íå óâåí÷àëèñü óñïåøíî.
  21.  
  22. Âåðíåìñÿ íåïîñðåäñòâåííî ê çàãðóçêå.
  23. Ïîñêîëüêó íà äàííûé ìîìåíò Êîëèáðè íå ÿâëÿåòñÿ ïîëíîñòüþ ñàìîñòîÿòåëüíîé ÎÑ, òî ïîâñåìåñòíî îíà ïðèìåíÿåòñÿ ïàðàëëåëüíî ñ äðóãèìè ÎÑ. Ýòà ñèòóàöèÿ ïðèâåëà ê òîìó, ÷òî ñîáñòâåííîãî íåçàâèñèìîãî çàãðóç÷èêà (åñëè íå ñ÷èòàòü ôëîïïè äèñêè) ó Êîëèáðè ôàêòè÷åñêè íåò.
  24. Íà ñåãîäíÿøíèé äåíü îñòàëèñü àêòóàëüíûìè òîëüêî 2 çàãðóç÷èêà: meosload.com è mtldr.
  25. Îáà ìîãóò çàïóñêàòüñÿ èç ñðåäû DOS.
  26. Óñòàíîâêà Êîëèáðè íà ôëåøêó â ìîåì âàðèàíòå íà÷èíàåòñÿ ñ óñòàíîâêè DOS íà ôëåøêó, êàê ïåðâè÷íîé ñèñòåìîé, èç-ïîä êîòîðîé áóäóò çàïóùåíû çàãðóç÷èêè Êîëèáðè. Êîíå÷íî, â ýòîì ñëó÷àå ñ òî÷êè çðåíèÿ ëèöåíçèè ëó÷øå èñïîëüçîâàòü ïîëíûå àíàëîãè DOS, êîòîðûå èìåþò ñâîáîäíóþ ëèöåíçèþ íà èñïîëüçîâàíèå, íî íå â ýòîì ñóòü, òàê ÷òî íå áóäåì îòâëåêàòüñÿ íà ìåëî÷è.
  27.  
  28. Óñòàíîâèòü DOS íà «ôëåøêó» ìîæíî íåñêîëüêèìè ñïîñîáàìè:
  29. à) ÎÑ Windows ïðè ôîðìàòèðîâàíèè ôëåøêè âûáðàòü ïóíêò ñêîïèðîâàòü ñèñòåìíûå ôàéëû, â îáùåì, òî æå ñàìîå ÷òî è äëÿ ôëîïïè äèñêåòû. Ê ñîæàëåíèþ, ýòîò ìåòîä ïîäõîäèò òîëüêî äëÿ ëèíåéêè 9õ, íà 2Ê íå ïðîâåðÿë, íî â ÕÐ ýòîò ïóíêò íåäîñòóïåí.
  30. á) DOS ïðè íàëè÷èè ýìóëÿöèè «ôëåøêè» êàê ãèáêîãî èëè æåñòêîãî äèñêà ìîæåò ñäåëàòü äèñê çàãðóçî÷íûì. Äëÿ ýòîãî íóæíî ââåñòè êîìàíäó sys X: ãäå Õ çàìåíèòü íà áóêâó, ïîä êîòîðîé ó âàñ çíà÷èòñÿ ýìóëèðóåìûé Flash íàêîïèòåëü (Áóäüòå îñòîðîæíû, åñëè âû óêàæèòå íå òîò äèñê, òî ìîæåòå óáèòü çàãðóç÷èê óñòàíîâëåííîé íà âàø æåñòêèé äèñê ÎÑ). Ïðè ýòîì DOS, ìîæåò, è áóäåò ðóãàòüñÿ, íî íå îáðàùàéòå íà ýòî âíèìàíèå è âûáåðèòå F (ïðîäîëæèòü), ãëàâíîå ÷òîáû â çàãðóçî÷íûé ñåêòîð íàêîïèòåëÿ áûë çàïèñàí çàãðóç÷èê, êîòîðûé è áóäåò çàïóñêàòü DOS ñ «ôëåøêè».
  31. Â ðåçóëüòàòå ìû áóäåì èìåòü USB Flash íàêîïèòåëü ñ óñòàíîâëåííûì DOS.
  32.  
  33. Èç âñåõ ôàéëîâ, êîòîðûå áóäóò íàõîäèòüñÿ íà «ôëåøêå» íåîáõîäèìû òîëüêî Command.com, Io.sys, Msdos.sys - îñòàëüíûå ìîæíî óäàëèòü, äëÿ íàøèõ öåëåé îíè íå íóæíû. Åñëè ïî êàêîé ëèáî ïðè÷èíå ýòè òðè ôàéëà íå ñêîïèðîâàëèñü íà íàêîïèòåëü, òî ñêîïèðóéòå èõ âðó÷íóþ. Äàëåå æåëàòåëüíî ïåðåçàãðóçèòü êîìïüþòåð è ïðîâåðèòü çàãðóçêó DOS ñ ôëåøêè. Åñëè âñå ïðîéäåò íîðìàëüíî, òî âû ïîëó÷èòå ïðèãëàøåíèå êîìàíäíîé ñòðîêè DOS, â ïðîòèâíîì ñëó÷àå íóæíî ïîïûòàòüñÿ óñòàíîâèòü ñíîâà.
  34.  äîïîëíåíèå ê ýòèì òðåì ôàéëàì ïîòðåáóåòñÿ â ðó÷íóþ ñîçäàòü åùå ïàðó ïóñòûõ ôàéëîâ: Config.sys, Autoexec.bat - ýòî íåîáõîäèìî, äëÿ òîãî ÷òîáû ñäåëàòü âïîñëåäñòâèè ïîëíîñòüþ àâòîìàòè÷åñêóþ çàãðóçêó Êîëèáðè, à íå ñòàðòîâàòü çàãðóç÷èê èç êîìàíäíîé ñòðîêè êàæäûé ðàç.
  35.  
  36. Íó, âîò ïîëîâèíà ðàáîòû ñäåëàíà. Äàëåå âîçíèêàþò íåêîòîðûå òðóäíîñòè, êîòîðûå ìû óñïåøíî ðàçðåøèì (äëÿ òîãî ÿ è ïèñàë ýòó ñòàòüþ).
  37. Òðóäíîñòè çàêëþ÷àþòñÿ â òîì, ÷òî â ñòàíäàðòíîì âàðèàíòå íè îäèí çàãðóç÷èêè íå çàãðóæàåò IMG îáðàç â ïàìÿòü (çàãðóæàåòñÿ è çàïóñêàåòñÿ òîëüêî ÿäðî), ïîñêîëüêó ïîäðàçóìåâàåòñÿ, ÷òî îáðàç áóäåò çàãðóæåí ÿäðîì. Íî êàê âû, íàâåðíîå, óæå äîãàäàëèñü îáðàç ÿäðó ãðóçèòü ïðîñòî íå îòêóäà, òàê êàê ñ USB óñòðîéñòâàìè Êîëèáðè ïîêà íå äðóæèò.
  38.  
  39. Îòñþäà îñòàåòñÿ îäèí âûõîä - ñäåëàòü òàê ÷òîáû çàãðóç÷èê çàãðóçèë íå òîëüêî ÿäðî, íî è îáðàç ïî íóæíîìó ìåñòó â ïàìÿòè. ÍÎ! (Îïÿòü ýòî íî!) Çàãðóç÷èê çàïóùåí â DOS, êîòîðûé ðàáîòàåò â ðåàëüíîì (Real mode) ðåæèìå ïðîöåññîðà, ñ îãðàíè÷åíèåì íà àäðåñàöèþ ïàìÿòè â 1 Ìá, à îáðàç â àäðåñíîì ïðîñòðàíñòâå Êîëèáðè êàê ðàç äîëæåí ðàñïîëàãàòüñÿ, àêêóðàò íà÷èíàÿ ñ ïåðâîãî ìåãàáàéòà è äàëåå â ïàìÿòè.
  40. Êàê æå áûòü? Ýâðèêà! DOS âåäü ìîæåò îáðàùàòüñÿ ÷åðåç äîïîëíèòåëüíûå äðàéâåðû ê ïàìÿòè âûøå ïåðâîãî ìåãàáàéòà (êñòàòè òàê è ïîñòóïàåò ÿäðî ïðè çàãðóçêå îáðàçà ñ ôëîïïè), íî ðåàëèçîâàíî ýòî òàê êîðÿâî, ÷òî ïîëüçîâàòüñÿ ýòèì íå õî÷åòñÿ ñîâñåì. (Êîíå÷íî ýòî ìîå ñóáúåêòèâíîå ìíåíèå).
  41.  
  42. Îäíîâðåìåííî ñ ýòèì åñòü äðóãîé ñïîñîá îáðàòèòüñÿ ê ïàìÿòè âûøå ïåðâîãî ìåãàáàéòà.  ïðîöåññîðàõ õ86 ñóùåñòâóåò âîçìîæíîñòü óñòàíîâèòü íåäîêóìåíòèðîâàííûé, íî ñ÷èòàþùèéñÿ ïðàêòè÷åñêè ñòàíäàðòíûì «íåðåàëüíûé» (Unreal mode) ðåæèì ðàáîòû.
  43. Êîíå÷íî, ïðÿìàÿ àäðåñàöèÿ â òàêîì ðåæèìå íåâîçìîæíà, íî ìîæíî îáðàùàòüñÿ ê ïàìÿòè êîñâåííî ÷åðåç ðåãèñòðû, ó êîòîðûõ áûëè èçìåíåíû ëèìèòû àäðåñàöèè.
  44.  ðåçóëüòàòå ïîëó÷àåì ñðàâíèòåëüíî ïðîñòîé ñïîñîá äîñòóïà ê ïàìÿòè âïëîòü äî 4 Ãá, íàõîäÿñü ôàêòè÷åñêè â ðåàëüíîì ðåæèìå ðàáîòû ïðîöåññîðà.
  45.  
  46.  ðåçóëüòàòå ÿ äîðàáîòàë çàãðóç÷èê meosload.com (ïîñêîëüêó â åãî êîäå ìíå îêàçàëîñü ïðîùå ðàçîáðàòüñÿ), òåïåðü îí çàãðóæàåò è ÿäðî è îáðàç, à çàòåì ñòàðòóåò ÎÑ.
  47. Äëÿ âêëþ÷åíèÿ «íåðåàëüíîãî» ðåìà ðàáîòû ïðîöåññîðà ÿ èçíà÷àëüíî èñïîëüçîâàë êîä, âçÿòûé ñ <http://www.wasm.ru> êîòîðûé ÿ ïåðåðàáîòàë â ïðîãðàììó enable.exe
  48. Ïîçæå êîä áûë ïåðåïèñàí íà ñèíòàêñèñ FASM (îðèãèíàë áûë äëÿ TASM), òîâàðèùåì Serge, çà ÷òî åìó îãðîìíîå ñïàñèáî, ïîñêîëüêó ó ìåíÿ íå õâàòèëî óìà è òåðïåíèÿ ñäåëàòü ýòî ñàìîìó.
  49.  
  50. Èòàê, ýòî áûëî äëèííîå îòñòóïëåíèå, íî áåç íåãî âû áû íå ïîíÿëè âñþ èäåþ ïðåäëîæåííîãî ìíîé ñïîñîáà çàãðóçêè.
  51. Îñòàëîñü ëèøü ñêîïèðîâàòü íà «ôëåøêó» ôàéëû  enable.exe è meosload.com, à òàêæå ïðîïèñàòü â Autoexec.bat èõ çàãðóçêó (Autoexec.bat ìîæíî ðåäàêòèðîâàòü ëþáûì òåêñòîâûì ðåäàêòîðîì) è, ðàçóìååòñÿ, íà «ôëåøêå» â êîðíå äèñêà äîëæåí íàõîäèòüñÿ ñàì ôàéë îáðàçà kolibri.img.
  52.  
  53. Âîò â ïðèíöèïå è âñå. Îñòàëîñü ïåðåçàãðóçèòü êîìïüþòåð è âûáðàòü çàãðóçêó ñ USB Flash íàêîïèòåëÿ.  ñèíåì îêíå çàãðóçêè â êà÷åñòâå çàãðóçî÷íîãî óñòðîéñòâà íóæíî âûáðàòü ïóíêò 3-èñïîëüçîâàòü óæå çàãðóæåííûé îáðàç.
  54.  
  55. P.S.
  56. 1) Õî÷ó âûðàçèòü áîëüøóþ ïðèçíàòåëüíîñòü çà ïîìîùü â ïîäãîòîâêå ìàòåðèàëà Àíäðåþ (NoName), Ýäóàðäó (DoomEdArchangel) è Ñåðãåþ (Serge).
  57. 2) Â àðõèâå ñ ýòèì ôàéëîì ñîäåðæàòüñÿ óïîìÿíóòûå â òåêñòå enable.exe è meosload.com è èõ èñõîäíûå êîäû.