Temat: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Pytanie do speców od MiNT .
Jakim softem zmienić flagi systemowe w headerze programu? Chodzi o ochronę i współdzielenie pamięci.

Teraz MiNT kiluje mi aplikację Gemdemo:

"KILLED. INVALID PROTECTION MODE. Please change the protection mode to 'Super' in the program header."

Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Thing ma to w informacjach o pliku.
Oprócz tego flags z MiNTBin.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

3

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

dzięki Adam, o to właśnie chodziło a Teradesk tych flag nie obsługuje

Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org

4

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

jest też jeden cpx z pakietu ct60, file coś tam .cpx.

=========================================
[www] https://nokturnal.pl
[ 16/32 bit Atari development wiki] https://bus-error.nokturnal.pl

5

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Witam,

BYc moze powtarzam sie ale jednak mam klopot, mam ustawione memory protection przy starcie systemu> jednak uruchomienie aplikacji np QED pojawia sie komunikat

Process "qed" Killed:
Memory Protection. (PID 120)
type: super    pc:028c0eaa
aDDR: 01282000  bp: 02892000
                            os:0002edaa

Czy powinien poustawiac flagi czy jakies jeszcze ustawienia w xaaesie czy w mint.cnf.
Mam postawionego Minta 1.18 z Thingiem, oczywiscie z Ct63 + ctpci i Radeon

Pozdrawiam
Kroll

Falcon CT63, CTPCI + Radeon 9250, napęd MO Fujitsu 230 MB oraz naped Syquest 230 MB, Nagrywarka Yamaha CDRW 2100, Napęd DVD-ROM, Netusbee, Skaner EPSON GT8000/Falcon 030, Ram 14 MB, karta CF 16 GB/Hades 060, CD-ROM, Nagrywarka Yamaha CDR, karta sieciowa, napęd Syquest 44 MB/Atari TT 030; 10 MB ST-Ramu, 64 MB TT-Ramu, Zewnętrzny naped CD-ROM, napęd MO Fujitsu 230 MB, karta graficzna MEGA Vision 300 Netusbee/Atari Jaguar + Skunkboard, Atari 65 XE + SIDE

6

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Witam,

Przepraszam nie chce byc posadzony o monolog, czy ktos wie co i jak poustawiac, niestety, xcontrol, zcontrol w momencie wywolania tego cpx z pakietu do ct63 odnosnie ustawiania flag sie wywala, oczywiscei przy wlaczonym Memory protection, prosze o pomoc wszystkich bieglych w MiNT-cie ?

Pozdrawiam
Kroll

Falcon CT63, CTPCI + Radeon 9250, napęd MO Fujitsu 230 MB oraz naped Syquest 230 MB, Nagrywarka Yamaha CDRW 2100, Napęd DVD-ROM, Netusbee, Skaner EPSON GT8000/Falcon 030, Ram 14 MB, karta CF 16 GB/Hades 060, CD-ROM, Nagrywarka Yamaha CDR, karta sieciowa, napęd Syquest 44 MB/Atari TT 030; 10 MB ST-Ramu, 64 MB TT-Ramu, Zewnętrzny naped CD-ROM, napęd MO Fujitsu 230 MB, karta graficzna MEGA Vision 300 Netusbee/Atari Jaguar + Skunkboard, Atari 65 XE + SIDE

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Wyłącz protekcję pamięci. Nie jest Ci potrzebna.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

8

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

AdamK:

Ok to wroce i wylacze protekcje a mozesz w kilku slowach napisac jaka jest zaleta wlaczonej protekcji pamieci

Pozdrawiam
Kroll

Falcon CT63, CTPCI + Radeon 9250, napęd MO Fujitsu 230 MB oraz naped Syquest 230 MB, Nagrywarka Yamaha CDRW 2100, Napęd DVD-ROM, Netusbee, Skaner EPSON GT8000/Falcon 030, Ram 14 MB, karta CF 16 GB/Hades 060, CD-ROM, Nagrywarka Yamaha CDR, karta sieciowa, napęd Syquest 44 MB/Atari TT 030; 10 MB ST-Ramu, 64 MB TT-Ramu, Zewnętrzny naped CD-ROM, napęd MO Fujitsu 230 MB, karta graficzna MEGA Vision 300 Netusbee/Atari Jaguar + Skunkboard, Atari 65 XE + SIDE

9

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

ale wyłączając ochronę pamięci wraca się z powrotem do ciemnego średniowiecza, co wybierasz? :)))

Jak mi się to podoba, łatwiej jest powiedzieć 'ochrona pamięci nie jest Ci potrzebna' niż przyznać 'trzeba poprawić qed' i/lub 'kernel FreeMiNT'a' .. :)))

kroll: proponuję zgłosić ten problem na mintlistę, a ktoś na pewno wytłumaczy dlaczego qed nie działa z ochroną pamięci. Zaleta wyłączonej ochrony jest taka, że źle napisany program wywala Ci w powietrze system operacyjny. Jak jest włączona ochrona pamięci to źle napisany program zabija się sam i niekoniecznie wykańcza system operacyjny (w przypadku FreeMinTa).

=========================================
[www] https://nokturnal.pl
[ 16/32 bit Atari development wiki] https://bus-error.nokturnal.pl

10

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Ok to porusze ten problem i sprqawdze jeszcze jakie aplikacje nie chca dzialac z ochrona pamieci. Wracam takze co daje ustawianie flag ? oraz te ustawienia w pliku mint.cnf czyli
KERN_SECURITY_LEVEL=0
KERN_MPFLAGS=0,
TPA_FASTLOAD=YES
TPS_INITIALMEM=4096

Tak mam w tej chwili poustawiane czy jest ok czy cos pozmieniac i itp ?

Pozdrawiam
Kroll

Falcon CT63, CTPCI + Radeon 9250, napęd MO Fujitsu 230 MB oraz naped Syquest 230 MB, Nagrywarka Yamaha CDRW 2100, Napęd DVD-ROM, Netusbee, Skaner EPSON GT8000/Falcon 030, Ram 14 MB, karta CF 16 GB/Hades 060, CD-ROM, Nagrywarka Yamaha CDR, karta sieciowa, napęd Syquest 44 MB/Atari TT 030; 10 MB ST-Ramu, 64 MB TT-Ramu, Zewnętrzny naped CD-ROM, napęd MO Fujitsu 230 MB, karta graficzna MEGA Vision 300 Netusbee/Atari Jaguar + Skunkboard, Atari 65 XE + SIDE

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

saulot: czyli mniej więcej tam gdzie reaszta softu którego chce użyć Kroll, które nie lubi się z protekcją pamięci :)

KERN_SECURITY_LEVEL=0 - tu zawsze na 0. To w teorii miało mieć możliwość ustawienia innych wartości ale najprawdopodobniej większość oprogramowania nie będzie z tym działać.

KERN_MPFLAGS=0 - 0 wyłączona protekcja pamięci 1 - włączona

TPA_FASTLOAD=YES - domyślnie, pod TOSem, przy włączaniu programu zerowana jest pamięć, ustawienie tego na YES wyłącza zerowanie, przez co programy ładują się szybciej, ale niektóre te gorzej napisane mogą mieć problem (ale można to ustawić im we flagach jeśli dobrze pamiętam)

TPS_INITIALMEM=4096 - w TOSie, każdy program, na starcie dostaje zarezerwowaną całą pamięć. To oczywiście nie jest dobry pomysł w systemie wielozadaniowym (bo inne procesy nie będą miały pamięci). Tu się ustawia ile tej pamięci na starcie dostaną (w kilobajtach). Każdy dobrze napisany program i tak zwalnia to co dostał na starcie, a potem rezerwuje według potrzeb.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

12

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Adam Klobukowski napisał/a:

saulot: czyli mniej więcej tam gdzie reaszta softu którego chce użyć Kroll, które nie lubi się z protekcją pamięci :)

KERN_SECURITY_LEVEL=0 - tu zawsze na 0. To w teorii miało mieć możliwość ustawienia innych wartości ale najprawdopodobniej większość oprogramowania nie będzie z tym działać.

KERN_MPFLAGS=0 - 0 wyłączona protekcja pamięci 1 - włączona

Dzieki AdamK za wytlumaczenie co i jak. POjawia sie pytanie bo Memory Protection ustawiam przy starcie programu mint060.prg naciskam SHIFT i pod klawiszem 5 jest NO albo YES i jesli ustawie w tej zmiennej KERN_MPGFLAGS=0 to znaczy ze bedzie jednak protekcja wylaczona ? i nie ma czegos takie ze cos ma wiekszy priorytet, mozna to ustawic albo przy starcie albo w pliku mint.cnf ?

Pozdrawiam
Kroll

Falcon CT63, CTPCI + Radeon 9250, napęd MO Fujitsu 230 MB oraz naped Syquest 230 MB, Nagrywarka Yamaha CDRW 2100, Napęd DVD-ROM, Netusbee, Skaner EPSON GT8000/Falcon 030, Ram 14 MB, karta CF 16 GB/Hades 060, CD-ROM, Nagrywarka Yamaha CDR, karta sieciowa, napęd Syquest 44 MB/Atari TT 030; 10 MB ST-Ramu, 64 MB TT-Ramu, Zewnętrzny naped CD-ROM, napęd MO Fujitsu 230 MB, karta graficzna MEGA Vision 300 Netusbee/Atari Jaguar + Skunkboard, Atari 65 XE + SIDE

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

O ile dobrze pamiętam to się ustawia tylko tam. TO się zapisuje w pliku MINT.INI.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

14

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

AdamK: Ok to bede ustawial to tylko w pliku mint.cnf

ALe w momencie uruchamiania minta 1.18 pisze ze jak sie nacisnie shift w ciagu 1s to pojawia sie Freemint boot menu:
1 Start up Fremint: yes
2 load external XFS: yes
i pod 5: Memory Protection: No albo Yes  stad moje pytanie.

A tak z innej beczki calkiem przez przypadek odkrylem ze dla ct63 poprawili TOS i mozna przypisac literki dalsze anizeli P podlaczylem zeby widziec w Mincie ten naed scsi i jako T przez przypadek uruchomilem TOS a to zdziewienie bo widze ten dysk i moge kopiowac z tego napedu :):)

Pozdrawiam
Kroll

Falcon CT63, CTPCI + Radeon 9250, napęd MO Fujitsu 230 MB oraz naped Syquest 230 MB, Nagrywarka Yamaha CDRW 2100, Napęd DVD-ROM, Netusbee, Skaner EPSON GT8000/Falcon 030, Ram 14 MB, karta CF 16 GB/Hades 060, CD-ROM, Nagrywarka Yamaha CDR, karta sieciowa, napęd Syquest 44 MB/Atari TT 030; 10 MB ST-Ramu, 64 MB TT-Ramu, Zewnętrzny naped CD-ROM, napęd MO Fujitsu 230 MB, karta graficzna MEGA Vision 300 Netusbee/Atari Jaguar + Skunkboard, Atari 65 XE + SIDE

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

To akurat raczej zaleta ExtenDosa aniżeli TOSa.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

16

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Adam Klobukowski napisał/a:

To akurat raczej zaleta ExtenDosa aniżeli TOSa.

Aha no to super az dzwi bierze jakos wczesniej nie zwracalaem na to uwagi Ze i Tosie mozna miec naped CD powyzej P a tak sie meczylem i kombinowalem :)

Pozdrawiam
Kroll

Falcon CT63, CTPCI + Radeon 9250, napęd MO Fujitsu 230 MB oraz naped Syquest 230 MB, Nagrywarka Yamaha CDRW 2100, Napęd DVD-ROM, Netusbee, Skaner EPSON GT8000/Falcon 030, Ram 14 MB, karta CF 16 GB/Hades 060, CD-ROM, Nagrywarka Yamaha CDR, karta sieciowa, napęd Syquest 44 MB/Atari TT 030; 10 MB ST-Ramu, 64 MB TT-Ramu, Zewnętrzny naped CD-ROM, napęd MO Fujitsu 230 MB, karta graficzna MEGA Vision 300 Netusbee/Atari Jaguar + Skunkboard, Atari 65 XE + SIDE

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Ograniczenie do P wynika z faktu, że od początku TOSa było sobie szesnastobitowe pole, w którym każdy bicik odpowiadał za to czy dysk jest dostępny czy nie. Łatwo więc policzyć że mieściły się literki od A do P. Jak to jest obchodzone, dokładnie nie wiem.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

18

Odp: MiNT - ochrona pamięci i flagi systemowe w headerze programu

Adam Klobukowski napisał/a:

KERN_SECURITY_LEVEL=0 - tu zawsze na 0. To w teorii miało mieć możliwość ustawienia innych wartości ale najprawdopodobniej większość oprogramowania nie będzie z tym działać.

Cały soft działa świetnie z KERN_SECURITY_LEVEL=1 (tzn. o ile ktoś czegoś tam nie popsuł pod moją nieobecność). Ustawienie 1 chroni np. przed sytuacją, kiedy user nie będący rootem (i np. zalogowany zdalnie) uruchamia sobie program wywołujący Rwabs() i zamazujący zawartość dysku.

Oczywiście Krollowi być może nie jest to potrzebne (bo nie ma innych kont poza swoimi), chciałem jednakże zwrócić uwagę na to, że to ustawienie nie "w teorii miało mieć możliwość", ale że ma dość praktyczne znaczenie.

KERN_MPFLAGS=0 - 0 wyłączona protekcja pamięci 1 - włączona

Na pewno? Coś mi się wydaje, że to tylko zmienia działanie ochrony już włączonej przez bootmenu.

Ostatnio edytowany przez drac030 (2012-03-17 12:40:02)

KMK
? HEX$(6670358)