Форум программистов, компьютерный форум, киберфорум
ОС на Assembler
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/49: Рейтинг темы: голосов - 49, средняя оценка - 4.67
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 16:02  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Jin X Посмотреть сообщение
Ещё линию A20 не забудьте включить (можно после запрета NMI)
а может проблема в том, что мы не активировали A20

R71MT, вот вы активировали?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.11.2023, 16:02
Ответы с готовыми решениями:

Джаббер сервер для Win x64
В поисковиках смотрел, но так и не нашел ни чего подходящего. Нужен джаббер сервер на Windows server 2008 x64. Кто что посоветует?

Сервер Domino 8.5.3 X64 И Файл Подкачки (pagefile)
Ребята, проблема в следующем: Имеется сервер Domino x64 8.5.3 с последними фиксапами. Оперативы 16 Гбайт. В последнее время админы...

Как перенести веб-сервер со всеми конфигами с Windows 10 x64 на Debian (ARM)?
В составе веб-сервера: Apache2 (2.4), PHP 7.3, MySQL 5.7, а также веб-сайт WordPress с плагинами и конфигом под ip windows-ноутбука. ...

209
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 16:17  [ТС]
info network дома
Миниатюры
x64 Сервер  
0
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 16:22  [ТС]
Но когда я в своем коде закоментировал "call UM" до работы с портом

на сервере вывелся дамп с Семёрочкой во втором столбце
Миниатюры
x64 Сервер  
0
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 16:24  [ТС]
А это дамп с самого первого вашего образа на сервере
Миниатюры
x64 Сервер  
0
Эксперт Hardware
Эксперт Hardware
 Аватар для R71MT
6215 / 2449 / 403
Регистрация: 29.07.2014
Сообщений: 3,181
Записей в блоге: 4
26.11.2023, 16:25
Цитата Сообщение от Teamur Посмотреть сообщение
а может проблема в том, что мы не активировали A20
наврядли..
без А20 фурычил-же первый образ.
вот он вроде, ..который парсил PCI-Cgf и структуру "PCI_COMMON_CFG"
если не будет работать, смотри на хосте, с какого девайса он грузится.. может вообще с харда, а ты ему флоп подсовываешь.
Вложения
Тип файла: zip Virtio2.zip (1.9 Кб, 2 просмотров)
2
Эксперт Hardware
Эксперт Hardware
 Аватар для R71MT
6215 / 2449 / 403
Регистрация: 29.07.2014
Сообщений: 3,181
Записей в блоге: 4
26.11.2023, 16:28
да.. вот этот я прицепил выше..
здесь нет А20, и вкллючён Unreal.
значит хосту не нравится запись в верхнюю память, которую забивал нулями при конфигурации очередей Queue. Щас попробую убрать эти блоки.
2
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 16:39  [ТС]
Хост каждый раз переустанавливает наши образы минут по 15, как-будто чего-то ожидает,
даже Ubuntu Server 2.5 Гиговый быстрее ставится, чем наши 1 МБ-ные образы

Дома всегда всё хорошо работает, а в реале вылезают сюрпризы
1
Эксперт Hardware
Эксперт Hardware
 Аватар для R71MT
6215 / 2449 / 403
Регистрация: 29.07.2014
Сообщений: 3,181
Записей в блоге: 4
26.11.2023, 16:45
вот короче образ, выводит справа карту системной памяти.
она нужна для того, чтобы вычислить свободные блоки под очереди in/out.
в предыдущих вариантах я забивал её нулями, и на лок.машине всё работало.
но на хосте походу эта область занята, и загрузка висла.
PS: мля какие-то тесты у нас, через 33 звезды..

Вложения
Тип файла: zip VirtioImg_NoWrite.zip (2.6 Кб, 3 просмотров)
2
Эксперт Hardware
Эксперт Hardware
 Аватар для R71MT
6215 / 2449 / 403
Регистрация: 29.07.2014
Сообщений: 3,181
Записей в блоге: 4
26.11.2023, 16:58
вот ещё табличка с картой системной памяти.
здесь видно, что область выше 0x00100000 считается свободной,
поэтому под буферы я выделил 0x00120000 и 0x00130000.
но видимо хост считает иначе, и нужно в его консоли уточнить.
Миниатюры
x64 Сервер  
2
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 17:09  [ТС]
R71MT, кстати Virtio2 образ сработал на сервере

Теперь запущу этот
0
Эксперт Hardware
Эксперт Hardware
 Аватар для R71MT
6215 / 2449 / 403
Регистрация: 29.07.2014
Сообщений: 3,181
Записей в блоге: 4
26.11.2023, 17:12
Цитата Сообщение от Teamur Посмотреть сообщение
info network дома
на хосте нужно проверить, а не дома
если покажет virtio-net-pci, значит это "Legacy" мода,
у современных девайсов "Modern" ид будут VID/DID=1AF4:1041, а не 0x1000.
2
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 17:32  [ТС]
Консоль на сервере позволяет вводить команды только если гостем является линукс,
а для кастомной ОС это просто VGA монитор, поэтому я на сервере не могу вводить команды, ту же "info network"
0
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 17:43  [ТС]
В процессе каждой 15 минутной установки обычно отображается это

но это я не знаю что - консоль хоста, ну и какой толк

больше мне в консоли ничего не доступно
Миниатюры
x64 Сервер  
0
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 17:46  [ТС]
когда установка завершается это всё исчезает и выводится то, что делает моя ОС

иногда видно дампы, иногда черный экран, по 100 раз обновляю страницу, перехожу во вкладку консоль и одно и тоже
0
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 17:50  [ТС]
Еще есть такая штука, но не пробовал
Миниатюры
x64 Сервер  
0
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 18:53  [ТС]
Образ VirtioImg_NoWrite дал черный экран на сервере
А если поставлю Ubuntu, то можно будет выудить нужную конфигурацию для VirtioNIC ?
0
Эксперт Hardware
Эксперт Hardware
 Аватар для R71MT
6215 / 2449 / 403
Регистрация: 29.07.2014
Сообщений: 3,181
Записей в блоге: 4
26.11.2023, 19:17
Цитата Сообщение от Teamur Посмотреть сообщение
Образ VirtioImg_NoWrite дал черный экран на сервере
код образа, который работает, весь находится внутри загрузчика, т.е. в первом секторе.
а виснет хост наверное потому, что во-всех последующих образах в память подтягивается второй (и следующие секторы) флопа через int-13h, очевидно в этом и проблема. почему так происходит - хз.

Добавлено через 2 минуты
а чё, нельзя чтоли посмотреть настройки на хосте, пусть и не через консоль?
есть там вообще поддержка int-13h?
2
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 20:16  [ТС]
R71MT, в общем это единственное, что выводится и при этом содержит код записи в порт 0C60h, но еще без Unreal Mode
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
; X ========================================== BOOT (
bits 16
org 7C00h
;jmp $+2
 
start: ;cli
xor ax, ax
mov ds, ax
mov es, ax
mov ss, ax
mov sp, 7C00h
;sti
 
; ------------------------------------ Чтение след секторов
mov ax, 0208h      ; AH=02; AL=01 (функция чтения секторов; 8 секторов = 512x8=4096 = 4 КБ )
mov cl, 2          ; CH=initial 00; CL=02 (; 2й сектор)
mov dh, 0
mov bx, 7E00h      ; =7C00h+0200h: (:512); Адрес для ядра
int 13h            ; читаем и кладем туда
 
jmp 0000:7E00h     ; es:bx (seg:offset) переход к ядру; CS=0000, IP=7E00h
 
; ------------------------------------------ oo
oo:
mov ah, 14         ; 0Eh
.ch:               ; перебор строки
  lodsb            ; AL = очеред байт из DS:SI
  int 10h          ; вывод
  loop .ch
ret
 
; ------------------------------------------ cc
cc:                ; Очистка экрана
mov ax, 3
int 10h
ret
 
; ------------------------------------------ re
re: ; 
    ; переход на новую строку
mov ah, 14  ; 0Eh
mov al, 0Ah ; LF
int 10h
mov al, 0Dh ; CR
int 10h
xor al, al
xor si,si
ret
 
; ------------------------------------------ hex
hex:  ; ebx
      ; Вывод содержимого ebx в 16-рич виде
        mov ah, 14  ; режим вывода текста
        mov cx, 8   ; количество итераций
 ascii: rol ebx, 4  ; YYYY -> BL[XXXX_....]
        mov al, 15  ;   0000_1111
        and al, bl  ; & XXXX_YYYY -> 0000_YYYY
        add al, 48  ; 0..9
        cmp al, 58  
         jl hexoo   ; AL+48 < 58
        add al, 7   ; A..F
 hexoo: int 10h
        loop ascii
  mov al, 0x20 ; SPACE
  int 10h
  ret
 
; ------------------------------------------ NicPciCfgDump
NicPciCfgDump:
mov   DX, 0x1004   ; 16 строк по 4 dword
xor   di, di       ; PCI regNum=0
.dump:
mov   ax, 0xB10A   ; fn Read_PCI_Conf_Dword
mov   bx, 0x0018   ; BDF
int   1Ah          ; ECX = Dword
bswap ecx          ; зеркалим по PCI спец
mov   ebx, ecx
call  hex
add   di, 4       
dec   DL           ; след dword
jnz  .dump
call  re
mov   DL, 4       
dec   DH           ; след строка
jnz  .dump
ret
 
; ------------------------------------------ CfgDump
CfgDump:
mov    DX, 0x0404      ; 4 строки по 4 dword
.dump:
mov   ebx, [fs:edi]    ; ECX = Dword
bswap ebx
call  hex
add   di, 4
dec   DL               ; след dword
jnz  .dump
call  re
mov   DL, 4
dec   DH               ; след строка
jnz  .dump
ret
 
; ------------------------------------ UM
UM:
; Создание GDT
lgdt [GDT]    ; Адрес таблицы GDT (Глобальная Таблица Дескрипторов)
cli           ; выкл прерывания
in  al, 0x70  ; Немаскируемые прерывания NMI
 
or  al, 0x80  ; 1000'0000
out 0x70, al  ;
 
mov eax, cr0  ; Переход в PM
inc al        ; вкл в CR0[0]=РМ
mov cr0, eax  ; -> PM
jmp $+2       ; после смены режимов обязателен JMP
 
mov ax, 8     ; селектор 4Gb-дескриптора в GDT
mov fs, ax    ; запись в сегм.регистр FS (свободный)
 
mov eax, cr0  ; Обратно в RM
dec al        ; вкл в CR0[0]=РМ
mov cr0, eax
jmp $+2       ; после смены режимов обязателен JMP
 
in  al, 0x70  ; снять запрет с NMI
and al, 0x7F  ; 0111'1111
out 0x70, al
 
xor ax, ax    ;
mov fs, ax    ;
sti           ; вкл прерывания
ret
; ------------------------------------ UM/
 
; GDT_UM
align 8                      ; адреса GDT кратны 16
Table equ $-8                ; нулевой дескриптор
      dq 0x00cf93000000ffff  ; дескриптор данных (4Gb)
  GDT dw $-Table-1           ; размер таблицы
      dd Table               ; адрес таблицы
 
; Messages
str1 db ' NIC_PCI_CFG_SPACE:'
len1 equ $-str1
str2 db ' NIC_PCI_COMMON_CFG:'
len2 equ $-str2
str3 db ' NIC_PCI_DEVICE_CFG:'
len3 equ $-str3
 
; -----------------------------------------
times 510-($-$$) db 0
dw 0xAA55
; ========================================= BOOT )
; ***************************************** CORE ( :7E00h
 
call cc
; call UM              ; Unreal Mode
 
; Получаем BDF {Bus:Dev:Fn} VirtNet
mov cx, 0x1000  ; DeviceID, 2 байта
mov dx, 0x1AF4  ; VendorID, 2 байта
mov ax, 0xB102  ; AH: PciFnID, AL: FindPciDevice.fn
int 1Ah         ; NIC_BDF = 0x0018 = BX{ BH: BusNum, BL:[DevNum:5, FnNum:3] }
 
PORT dw ?          ; 2 байта для номера порта
 
mov di, 16         ; 0+16 = NicPciConf +0x10: BAR0
mov ax, 0xB10A     ; ReadCfgDword.fn
                   ; BX: NIC_BDF
int 1Ah            ; ECX = Dword = порт BAR0
 
and cl, 0xFE       ; 0xC061 -> 0xC060
mov [PORT], cx     ; сохраним
 
mov dx, [PORT]     ; номер порта в DX = С060h
add dx, 12h        ; сместиться в порту к "регистру статуса" = C072h
mov al, 0          ; <------- код "Device_reset=0"
out dx, al         ; Reset!
inc al             ; <------- код "Acknowledge=1"
out dx, al         ; Hello!
mov al, 3          ; <------- код "Driver=2"
out dx, al         ; I'm VirtNet driver!
 
; Дамп NicPciCfg
call NicPciCfgDump
call re
Поэтому я думаю, что нужно перейти в Unreal после натсройки VirtioNIC
Как-только я раскомментирую вызов 'call UM', то на сервере снова будет черный экран

Добавлено через 55 минут
Цитата Сообщение от R71MT Посмотреть сообщение
а чё, нельзя чтоли посмотреть настройки на хосте, пусть и не через консоль?
есть там вообще поддержка int-13h?
Тогда каким чудом, на этом же сервере я могу легко поставить любой Linux и тд?
Они же как-то подключают последующие сектора при загрузке

Поэтому я и говорю - может поставить ubuntu и через неё получить нужную инфу по сетевухе
Вы также предлагали когда-то поставить DOS и это поможет понять что там внизу

Может попробовать максимально сократив код уместить его в первом секторе, действуя так,
1) как-будто у нас реально Legacy
2) пропускать получение промежуточных дампов
3) не выводить на экран Названия и тп
3) а вывести только дамп настроенного конфига

так сказать вслепую и с верой в успех, веря в предположения


Но мой код выложенный в этом посте без UnrealMode тоже подтягивает другие сектора, но на сервере уже выводится
0
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
26.11.2023, 21:17  [ТС]
R71MT, просто необъяснимо. Выводится, когда использую код из моего предыдущего поста
В нем я не перехожу в Unreal Mode, а работаю с портом
Миниатюры
x64 Сервер  
0
 Аватар для Teamur
29 / 29 / 5
Регистрация: 06.01.2015
Сообщений: 336
27.11.2023, 11:27  [ТС]
R71MT, здравствуйте, возможно у вас ошибка здесь

Assembler
1
2
mov al,0x3           ; <------- код "Driver=2"
out dx,al            ; I'm VirtNet driver!
Надо наверное mov al, 0x2

согласно таблице флагов
FlagsDescription
01Device Acknowledged
02Driver Loaded
04Driver Ready
40Device Error
80Driver Failed
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.11.2023, 11:27

Сервер HP Primergy Econel 200 S2, Win2008R2 x64, RAID10 4x2000Gb падает скорость чтения/записи по сети
Здравствуйте. Подскажите, пожалуйста, в чем может быть проблема: Сервер бэкапов HP Primergy Econel 200 S2 Встроенный SATA RAID...

Linux Mint 20 x64, Firefox 79 x64. Отключить замыливание текста
Поставил Linux Mint 20, отключил сглаживание шрифтов, поставил шрифты от Windows XP, все хорошо, все нравится. Только в Firefox остался...

HP Pavilion g7 - 2160er переустановил Windows HP x64 на Ultimate x64 - проблема с подсветкой монитора
HP Pavilion g7 - 2160er переустановил windows home premium x64 на Ultimate x64/ Стала выеживаться подсветка монитора - хочет работает,...

Нестандартная ситуация, установка еще одной w7 x64 на уже установленный комп с w7 x64
Всем доброго времени суток ! Не совсем стандартная ситуация, которая посадила меня на гвоздь в позе &quot;шпагат&quot; ))) Есть машинка...

Ищу обновления KB938397-x64 и KB968730-x64 для Windows Server 2003x64
Господа плиз ХЕЛП! Ищем обновы KB938397x64 и KB968730x64 для Windows Server 2003x64 RUS, а то сволочной сервер 1С не видит интеренет. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
140
Ответ Создать тему
Новые блоги и статьи
Теория всего 12. ВГК
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики 1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
Публикация отклонённая на хабре. Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование задачи и целеполагание
Hrethgir 21.07.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11948&stc=1&d=1784657928 Привет Хабр. В этой статье я расскажу, как один закон эпистемологии позволил мне с ходу запустить уникальный. . .
Теория всего 11. Основные параметры
anaschu 21.07.2026
Дешифровка тензорного ядра Soil Chemistry 2. 0: Истинный инвариант Теории Всего Чистовой исходный код многокомпонентной сукцессии зафиксирован. Модель оперирует единым вектором состояния. . .
Теория всего 10. Клод трусишка
anaschu 21.07.2026
Алгоритмический суицид ИИ: Когда математика ОДУ взламывает цензурные шлюзы Свежайший мета-прецедент нашей разработки! Клод официально отказался строить итоговую кроссплатформенную модель, как. . .
Теория всего 9. Окончательная проработка метафоры "дерево = традиции"
anaschu 21.07.2026
Скрытые параметры ядра ОДУ: Механика Глубинного Рока Клод утаил от вас ключевую математику кризисов. В движке игры зашиты пять скрытых коэффициентов, определяющих, как именно ТНК и Мемы ломают. . .
Теория всего 8. Clauude трусишка. Ответ джемени
anaschu 21.07.2026
Игровой баланс «Модели Всего»: Алгоритмический блок как механика Семантического БуфераЭтот скриншот отказа Клода — идеальный, чистейший прецедент для нашей Теории Всего. Вы столкнулись не просто с. . .
Теория всего 7. Дерево - это патриархат, грибы - это феминизм
anaschu 21.07.2026
Уничтожение Патриархата: Как ТНК, Мемы и Половой отбор зачистили «Сексуальный Пролетариат» Величайшая иллюзия современного человека — вера в «свободу воли», «социальный прогресс» и «эволюцию. . .
История и социология Терры на примере борьбы микориз за пространство. 1. Глоссарий терры.
anaschu 21.07.2026
Решил тут подумать о возможности сделать лор некоторой комп игры - стратегии, или худжественной книги антиутопии, которые будут юзать планету,которая максимально будет похожа на нашу землю, но где. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru