Page 15 of 17

Re: Колибри 0.7.1.0

Posted: Sun Nov 30, 2008 12:07 am
by diamond
Ой... совсем забыл, что эти комментарии появились только в svn.726, в то время как 0.7.1.0 - что-то типа svn.641... Короче, в более новых сборках (моей AZ от 14.02.2008 и 0.7.x.0 от Leency - искать в соседних ветках) это уже есть.

Re: Колибри 0.7.1.0

Posted: Sun Nov 30, 2008 1:09 am
by Galkov
Ну вот, а я уже заново прокачал дистрибутив, переустановил mtldr :D

Кстати, а где ОНО чего запоминает :?:
Если у меня ничего кроме ntfs-а как-то и нету...
А то в default-е и разрешение сразу нужное стояло, и источник загрузки...
И вот VRR включенный был (наспех же), а все прекрасно загрузилось

В первый раз, когда ставил "откуда" - мне все было понятно и очевидно (деталей - не помню)
А сейчас смотрю: "дискета" - понятно, "FAT32" - понятно, "уже загруженный образ" - чего-то не очень очевидное.
Следовательно, начинаешь думать: синий экран - это загруженный откуда-то код, тогда почему вообще надо спрашивать "откуда", если загрузка УЖЕ пошла, и ее источник, соответственно, известен...
Разве есть разумные варианты для загрузчика с ntfs, а ядра с FAT :?:
Или наоборот :?:

Re: Колибри 0.7.1.0

Posted: Sun Nov 30, 2008 1:49 am
by diamond
Там выставляются довольно разумные значения по умолчанию. Насчёт сохранения настроек читать здесь: viewtopic.php?f=1&t=335 .

Конечно, синий экран - это уже загруженный код (конкретно загрузчик грузит ядро kernel.mnt), но, во-первых, он может не знать, откуда он загружен, во-вторых, может не уметь работать с устройством/файловой системой, откуда оно было загружено (всё это происходит на очень ранних этапах загрузки), в-третьих, не всегда нужно грузить образ дискеты оттуда же, откуда загрузилось ядро. В текущей реализации на момент появления синего экрана ядро уже загружено и должно понять, откуда грузить образ дискеты. Когда Menuet ещё только зарождалась, она могла грузиться только с дискеты, и бутсектор дискеты просто считывал kernel.mnt и передавал ему управление, с тех пор в синем экране сидит вариант загрузки дискеты целиком и код считывания дискеты целиком в память (он неоднократно менялся, но существует). Далее, есть такая вещь, как kernel restart (соответствующая кнопка в нормальном приложении end), при которой Kolibri (впрочем, это тоже идёт от Menuet) завершает работу и перезапускает саму себя с рамдиска (в смысле, берёт kernel.mnt с рамдиска, загружает его и передаёт ему управление); при этом образ дискеты уже есть в памяти, но может отсутствовать в других местах. Позднее этот вариант стал также использоваться для случая, когда загрузчик загрузил не только собственно ядро kernel.mnt, но уже и собственно образ откуда-то, неважно для ядра, откуда именно. Это и соответствует варианту "уже загруженный образ". Далее в процессе развития Menuet людям, естественно, надоело каждый раз грузиться с дискеты (которая является и являлась довольно медленным устройством) и появился вариант с загрузкой из FAT32 - загрузчик meosload, также потом неоднократно перерабатывался, способен загрузить ядро (в Menuet-варианте только само ядро, kernel.mnt) из образа на FAT-разделе; соответственно появился (уже в самом ядре) и вариант загрузки образа с FAT-раздела. Вариант с динамическим созданием пустого рамдиска появился уже в Колибри относительно недавно и используется в случае альтернативного варианта загрузки с жёсткого диска, когда предполагается, что системные файлы будут размещаться не на рамдиске /rd/1, а прямо на жёстком диске, но архитектура Колибри (унаследованная от Menuet) предполагает, что рамдиск должен быть, даже если он не используется.

Короче, есть два стандартных варианта - загрузка с дискеты и выбор загрузки образа с дискеты же и загрузка через mtldr и выбор уже загруженного образа (mtldr его честно грузит).

Re: Колибри 0.7.1.0

Posted: Sun Nov 30, 2008 2:51 am
by Galkov
diamond wrote:Насчёт сохранения настроек читать здесь:
Спасибо, вроде и читал, а по первому разу - не отложилось :oops:
Понял так, что bios, хоть про файловую систему ничего и не знает, но писать в сектор - МОЖЕТ
((просто затуманилось этим: ntfs читать можем, а писать - нет))

diamond wrote:но, во-первых, он может не знать, откуда он загружен, во-вторых, может не уметь работать с устройством/файловой системой, откуда оно было загружено (всё это происходит на очень ранних этапах загрузки), в-третьих, не всегда нужно грузить образ дискеты оттуда же, откуда загрузилось ядро
А все-таки не понял полностью всех нижеследующих хитрых объяснений :(
Пользователю предоставляется сделать некий выбор, а ведь нет же у него никакого выбора на самом деле, не будет ведь файл mtldr (вместе со своим первым сектором) никогда располагаться на дискете
Или будет :?:
Неужели все это для того, чтобы, например для дискеты, FAT32, или для CD - использовать один и тот же файл с одним и тем же "первым сектором"

diamond, на всякий случай, нет у меня проблем, просто тренируюсь в абстрагировании под "нулевого пользователя" :D
Пока в памяти все свежо - потом уже, эти упражнения станут бесполезными, ничего не выйдет.
Ну и любопытно конечно же: ну все равно же для разных источников загрузки - ну разные коды коды будут, наверное....
Ну пусть еще на один байт отличаются - ответом на этот магический вопрос, без задавания его на синем экране....

Re: Колибри 0.7.1.0

Posted: Sun Nov 30, 2008 1:11 pm
by diamond
Galkov wrote:А все-таки не понял полностью всех нижеследующих хитрых объяснений
Тогда забудь. В реальных ситуациях пользователям трогать пункт [d] не нужно.

Re: Колибри 0.7.1.0

Posted: Sat Dec 27, 2008 1:26 am
by Galkov
Ну вот, у меня новая беда :(

1) На старенькой буке мамка накрылась
2) А на новом (следствие п.1) ASUS'е - Kolibri винта не видит
Если включить видимость boot-device - ось просто не запускается. А если отключить (как и рекомендовано) - нет их, и всего делов
Про него Bios рассказывает такое:

Code: Select all

Pimary IDE Master [ST9160827AS]
  Device    : Hard Disk
  Vendor    : ST9160827AS
  Size      : 160.0GB
  LBA Mode  : Supported
  Block Mode: 16Sectors
  PIO Mode  : 4
  Async DMA : MultiWord DMA-2
  Ultra DMA : Ultra DMA-6
  S.M.A.R.T.: Supported
- Форматирован как два тома FAT32

CD - вижу и читаю (проверял CDFS)

С видюхой тоже проблемы: квадраты прямоугольные, и круги не по циркулю :wink:
Kolibri читает интерфейс как VESA 3.0 и видит только режимы 640x480, 800x600, 1024x768
А есть еще 1280x600, 1280x720, 1280x768, 1280x800 - этот штатный в винде, в нем круги - действительно круглые
Про карту...
Если смотреть на ярлык, то это: WXGA-14"
Если на драйверы в винде, то: Mobile Intel(R) 965 Express ChipSet Family
В подробностях этого драйвера: Строка контроллера - Mobile Intel(R) GMA X3100
Ну и 256М видеоозу (что характерно - свои, от общей памяти ничего не отрезано)


Вот в результате и печальный вопрос: насколько это все смертельно :?:
Без носителей, одинаково доступных и в винде, и в KoOS - сложно как то :(
В одном эмуле работать - слишком самонадеяно, имхо...

Re: Колибри 0.7.1.0

Posted: Sat Dec 27, 2008 3:09 am
by Gluk
а USB - флэшки?

Re: Колибри 0.7.1.0

Posted: Sat Dec 27, 2008 3:50 am
by Leency
Проверил у себя - флешки видятся, но не работают. Тоесть PCI видит и Эолайт, в других ФМ они не отображаются.

Re: Колибри 0.7.1.0

Posted: Sat Dec 27, 2008 10:28 am
by diamond
Galkov
Возьми, что ли, последнее ядро с svn или http://kolibrios.org/?p=Download и проверь его...

Re: Колибри 0.7.1.0

Posted: Sat Dec 27, 2008 12:04 pm
by Galkov
Если конкретно это: http://kolibrios.org/files/download/k_svn.978_ru.7z -- то ничего не поменялось :(
((я еще не силен в принятых технологиях апдейта: содержимое архива залил в kolibri.img с помощью WinImage))

Re: Колибри 0.7.1.0

Posted: Sat Dec 27, 2008 3:45 pm
by Serge
Galkov

Здесь пояснение почему не виден винт. Если в биос есть расширенные настройки для контроллеров попробуй их. Может винт появится но потеряешь СD.

Re: Колибри 0.7.1.0

Posted: Sat Dec 27, 2008 6:46 pm
by camper
diamond wrote:Galkov
Возьми, что ли, последнее ядро с svn или http://kolibrios.org/?p=Download и проверь его...
Мне тоже попробовать с ним и с Эолайтом?

Re: Колибри 0.7.1.0

Posted: Sat Dec 27, 2008 10:45 pm
by diamond
camper
Нет. Кстати, проверь почту.
Galkov
Да, именно это имелось в виду. Насчёт ситуации с отключённым пунктом (b) - Serge уже ответил, а вот то, что со включённым система виснет - надо разбираться. Проверь, что выдаёт http://diamondz.land.ru/flashcard/kernel.mnt (первые пять и последние пять строчек листинга, не считая ругательства, начинающегося с "K : process terminated", если таковое будет, а также все нетипичные строчки листинга)

Re: Колибри 0.7.1.0

Posted: Sun Dec 28, 2008 12:18 am
by Leency
Спасибо diamond'у, заработали флешки.

Re: Колибри 0.7.1.0

Posted: Sun Dec 28, 2008 2:55 pm
by Galkov
Наблюдение: везучий человек, этот Leency - и usb-мыша у него работает, и флэшки читаются :D
Про себя у меня тоже есть многолетние наблюдения, но я их пока не буду озвучивать...
Вот результаты теста (полные) озвучу:

Code: Select all

пункт (b)=on
  Hello, World!
  8006FFFF
  0000:0500:CD13F4CD:9000A000
  Simulate_int from 0000:0202 to F000:7E90
  F000:7F80:9C0E1EE8:90009FF2
  ECBA:01A6:FBFC0AE4:90009FEC
  ECBA:0F6F:9C50FAE4:90009FBE
  ECBA:0F71:FAE42188:90009FBA
  ECBA:0F7D:9DC3E8ED:90009FBC
  ECBA:0BC3:9C83FF0A:90009FB4
  ECBA:0C61:9D7403E9:90009FB2
  ECBA:0929:FB515250:90009FB2
  ECBA:122F:FA660FB7:90009F96
  ECBA:0929:FB515250:90009F8C
  ECBA:0A5A:FA508B46:90009F8E
  ECBA:0A6F:FBC3E8E3:90009F8E
  ECBA:09A0:CD15FB72:90009F8C
  Simulate_int from ECBA:0206 to F000:F859
  F000:14FE:FB508AC4:90009F86
  ECBA:09A2:FB7212BB:90009F8C
  --> дальше просто висим...


пункт (b)=off
  Hello, World!
  K : Process - forced terminate PID : 00000000
  K : Page fault
  K : EAX : 000001FF EBX : 00000002 ECX : 00000000
  K : EDX : 800F0177 ESI : 80822008 EDI : 8003E18C
  K : EBP : 000F0010 EIP : 80012ED5 ESP : 80821DF4
  K : Flags : 00210246 CS : 00000008 (kernel)
  --> дальше просто висим...