-
Data: 2022-06-06 17:04:42
Temat: Re: Budowa własnego linuksowego komputerka
Od: heby <h...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 06/06/2022 13:08, J.F wrote:
>> Można ją zrealizować bez MMU, tylko mało wydajnie.
> Nie bardzo czuje jak.
> Jest program, ma kod, ma dane, ma gdzies zapamietane adresy tych
> danych, i nagle to trzeba zduplikowac.
> Kod moglby zostac ten sam, ale co z adresami w pamieci?
Dwie rzeczy:
1) tak, for jest trudny w systemach bez pamięci wirtualnej i wymaga masy
roboty (i w wielu sytuacjach może sie nie powieść). Na pewno jest to
skrajnie kosztowne i bez sensu.
ale
2) for prawie nigdy nie jest uzywany w małych systemach w taki sposób
jak "watki". Na 99% fork zakończy się execv, co oznacza, że cała ta
ciężka robota z potencjalnym forkowaniem zazwyczaj to tylko wymówka aby
odpalic inny proces. O, to już można mieć protezę forka. Gdzieś taką
implementację widziałem nawet, nie wiem czy nie w jednym z tych małych
Linuxów bez mmu - robiło "forka" i czekało na execv i to wystarczyło aby
ogarnąć 99% programów Linuxowych.
>> Win do 3.11 był cooperative. Pierwszy domowy Win z preemptive to 95.
>> Dokładnie 10 lat po Amidzie i Sinclair Ql.
> A, ok, pomylilo mi sie.
> Ale preemptive byly tez chyba widowsy 3.x, o ile uruchamiane na 386.
Win3.11 jest cooperative, co nie było niczym specjalnie dziwnym, jabłka
też były, jakoś przeoczyli rewolucje siedząc dalej w nakładce na DOSa.
Być może były jakies protezy pod spodem, któe pozwalały odpalać kilka
Win na raz (gdzieś to widziałem) i byc może były preemptive, ale nie
natywnie w Win.
>> Nie. To kwestia bezpieczeństwa. Nie mueisz go mieć aby dalej mieć
>> użyteczny system.
> A co to za uzyteczny system, ktory nie wiadomo kiedy wyleci, z winy
> jednego programu :-)
To nie ma znaczenia. To czy Ci wyleci sterowanik silnika respiratora w
procesorze z MMU czy bez MMU jest mało istotne bo w obu wypadkach jesteś
w d... To tylko może nieco zmniejszych poziom katastrofy, ale nie
zapobiega jej. Zaryzykuje, że ważniejsza jest jakośc kodu niż to, czy
jest chroniony w systemie *zamkniętym*.
Tak naprawdę ochrona ma sens dopiero w czasach malware. Wczesniej była
fajnym ficzerem, ale niekoniecznie krytycznym, a przez dziesięciolecia
olewanym na wszelkie sposoby przez twórców OSów.
>>> A teraz jeszcze wirusy, internet, szpiegowanie :-)
>> *TERAZ* tak. Wtedy nie.
> Wirusy sa stare :-)
Wirusy które robią coś uzytecznego, online, są w miarę nowe.
A w dawnych czasach, posiadanie "protected MMU win95" oznaczało tylko,
że trzeba było zawołać ze 3 wywołania WinAPI więcej, żeby uzyskac
admina. To żałosny system był, protekcja pamieci to pic na wodę w
tamtych czasach. W zasadzie jako taką uwagę przyłożono dopiero w lini
NT, a linia 9x była robiona na odpiernicz się.
Dalej, są miejsca (embedded) gdzie protekcja/stronicowanie pamieci nie
ma wielkiego znaczenia i gdzie można stosować systemy które wyglądają
jak Unix, jesli ktoś potrzebuje. Wymaga to poświęcenia kilku detali, ale
one nie są krytyczne.
Następne wpisy z tego wątku
- 17.06.22 11:23 Atlantis
Najnowsze wątki z tej grupy
- Rapsberry Pi i synchronizacja plików
- RCD 300 mA
- rpi i moduł przekaźników
- Falownik do pompy CO
- Lampa ogrodowa rozłączała różnicówkę
- Inteligentne oświetlenie schodów
- Pytanie do Użytkownika
- Emanuel kiedyś szukał gotowca do chłodzenia leków
- Sprzęty z Lidl-a
- idzie nowe
- Wybuchające pagery
- Jak shakować windę
- Sterowanie bezprzewodowe do wbudowania
- NC vs NO
- Jak dzięki mojemu pomysłowi amerykańce z Google przyspieszyli TV
Najnowsze wątki
- 2024-09-30 Rozprawa zdalna brak komputera
- 2024-09-30 Zielona Góra => Spedytor międzynarodowy <=
- 2024-09-30 Hackowanie SS7
- 2024-09-30 Seba strikes back
- 2024-09-30 MĂźnchen => DevOps Engineeer (Azure) <=
- 2024-09-30 MĂźnchen => DevOps Engineer (Azure) <=
- 2024-09-30 Gdańsk => Frontend Developer (Angular area) <=
- 2024-09-30 Warszawa => Spedytor Międzynarodowy <=
- 2024-09-30 Marki => Senior PHP Symfony Developer <=
- 2024-09-30 Warszawa => Technical Leader (Java Background) <=
- 2024-09-30 Warszawa => Key Account Manager <=
- 2024-09-30 Warszawa => Key Account Manager <=
- 2024-09-30 Białystok => Full Stack .Net Engineer <=
- 2024-09-30 Kraków => Ruby Backend Developer <=
- 2024-09-30 dziki wschod