Polski człowiek wykonał system operacyjny dla RP2350 w Zig!
Ale nikt mu nie pogratulował bo jest ze wsi ;-)
“Każdy mądry człowiek chce być poprawiany, a nie podziwiany” - Marvin Minsky
Tak właściwie, po kilku dniach, pomyślałem, że niczego nie wyniosłem z tego filmu. Więcej wynoszę z nudnych filmów, gdzie ktoś siedzi i koduje i ja widzę jak koduję i mi opowiada co myśli i dlaczego podjął taką decyzję. To i tak nie ma sensu. Ponieważ jest zbyt bierne. Najwięcej sensu ma dużo własnej praktyki i wyciąganie wniosków. To nam pokazuje na co nas stać intelektualnie. To jest prawda o nas samych.
Piękny słowotok.
Mnie po obejrzeniu materiału zaciekawiło, w jaki sposób 16-bitowce bez MMU zarządzały pamięcią procesów.
Ciekawe kiedy powstanie “Workbench” na Pico.
520 KB RAMu to nadal trochę za mało do pracy, ale jakieś tech demo da się już zrobić.Czy 68k był 16-bitowy?
Miały globalny, systemowy alokator? Nie musiały uwalniać pamięci, jeśli ginący proces jej nie uwolnił. To zależy czy miały miejsce na przechowywanie informacji o tym jaki proces alokuje pamięć.
Midori też miało nie obsługiwać MMU i zyskiwać dzięki temu 30% wydajności. Miało być jak NaCl.
Pewnie można szybciej zrobić port RiscOS.
Mi się podobało programowanie od podstaw. W pewnym momencie zaczęło “chodzić” za mną kilka przydatnych funkcji, które można nazwać biblioteką standardową.
Czy 68k był 16-bitowy?
To zależy od przyjętego kryterium. Mi chodziło bardziej o brak pełnoprawnego MMU i współdzieloną pamięć pomiędzy wszystkimi procesami. Zakładam, że już wtedy binarki musiały być budowane jako Position Independent Code i obsługiwać jakieś relokacje dla danych.
Nie widzę problemu we wspólnej przestrzeni adresowej. Obszar jądra i moduły w takiej działają.
Wpisałem w wyszukiwarkę Amiga Hunk i wyskoczyły mi zdjęcia panów trzymających w ręku penisę męską. Podobała mi się sekcja overlay.
Jeśli chcesz zachować wydajność, binarki mogą mieć metadane z szablonami, z informacją o tym, w którym miejscu trzeba wprowadzić przeliczony adres.
Tak, ale w kernelu nie ma raczej potrzeby tworzenia oddzielnych kopii zmiennych globalnych per proces/zadanie. Takie rzeczy trzyma się w strukturach.
Oczywiście tak samo należałoby rozwiązać problem na mikrokontrolerze, ale jak rozumiem, autor filmiku chce zrobić w swoim systemie bardziej uogólnione rozwiązanie (z sekcją .data we współdzielonych bibliotekach).To są i żeńskie?
Przepraszam, ale chyba straciłem wątek. Ewentualnie przerósł mnie kontekst. Straciłem z oczu/myśli cel.
Dygresja: Niedawno dowiedziałem się, że pierwsze Mac były jednozadaniowe jak DOS. Po prostu miały graficzny shell do odpalania jednej aplikacji. Możliwość uruchamiania większej ilości procesów pojawiła się kiedy jeden z użytkowników chciał to zaimplementować. Potem kupiło to Jabłko i go zatrudniło. Miał wiele problemów z izolacją aplikacji, które robiły różne rzeczy z pamięcią po swojemu. Oczywiście nie byłą to wielozadaniowość, tylko przełączanie aplikacji. W latach 1980 słyszałem też o takich niezależnych rozwiązaniach dla DOS.



