Cyjon OS

Odpowiedz Nowy wątek
2015-04-10 20:41
45

Programowanie może być ciekawe.

W pełni 64 bitowe jądro systemu jak i oprogramowanie oraz system plików.
W języku asemblera.

Wszystkie programy pisane własnoręcznie, nie są przenoszone z systemów GNU/Linux (tylko na nich wzorowane - wizualnie :)).

user image

Edytor tekstu "nano":

user image

Aby daleko nie szukać, poniżej paczka z obrazem systemu.

Aktualizacja 21.12.2015:

user image

Aktualizacja 3.1.2016:

user image
user image

Aktualizacja 5.1.2016:
Wykonałem trochę modyfikacji i teraz działa znacznie lepiej (znalazłem parę błędów) jak i się prezentuje.

user image

Aktualizacja 27.05.2016:
Obsługa protokołu ARP, IP i ICMP !

user image

Aktualizacja 11.06.2016:

Udało mi się nawiązać połączenie przez przeglądarkę, "stos" tcp/ip przyjmuje tylko jedno połączenie ;)
Teraz muszę wysłać dane do serwera httpd wraz z identyfikatorem połączenia.
Serwer wyśle odpowiedź do klienta(przeglądarka) i demon_tcp zakończy połączenie, oczekując na następne xD
user image

Aktualizacja 30.06.2016:

Udało się, mam serwer WWW, stos TCP/IP i system operacyjny... a wszystko w asemberze :D
user image

Aktualizacja 28.12.2016:

Niewiele zmieniło się z zew. punktu widzenia, ale pod maską jest już pełna obsługa wirtualnych konsol!
Powłoka otrzymała możliwość buszowania po systemie plików (w tym i każdy inny proces).
title

Aktualizacja 15.01.2017:

title
title
title


edytowany 10x, ostatnio: akasei, 2017-01-15 00:55
Unikałbym stosowania istniejących nazw własnych programów. Tak tylko piszę. Ogólnie bardzo fajnie. :) - Tacet 2015-04-11 00:24
Tak, zgadzam się... dopóki się z tym nie panoszę na lewo i prawo, mogę je stosować. Nazwy te zastosowałem by osoby postronne szybko się odnalazły. - akasei 2015-04-11 00:34
Powoli przepisuję "uproszczony" kod jądra systemu do GitHub, dodając masę komentarzy. - akasei 2015-04-11 18:00
Plik system.zip powyżej, nieaktualny. Najnowszą wersję zawsze można pobrać z GitHub. - akasei 2015-12-21 07:15

Pozostało 580 znaków

2017-01-20 15:17
4

Przepisanie na nowo obsługi protokołów Ethernet i ICMP poskutkowało bardzo dobrym czasem reakcji.
Jestem pewien, jeśli poprawię kolejkę procesów będą same <1ms :)

title


Jest ktoś w posiadaniu fizycznej i8254x (e1000) na PCI? Byłbym rad sprawdzenia czy wykrywa poprawnie. Jeśli nie to zapewne zakupię bo to nie koszt. - akasei 2017-01-20 17:33

Pozostało 580 znaków

2017-01-20 21:30
0

Sprawdziłem, jak wygląda komunikacja DNS...
title

Prościej się nie dało :) Bez problemu zaimplementuje, więcej czasu poświęce serwerowi (aplikacji) do tego.

Zastanawia mnie jednak co innego, w jaki sposób DNS lub PING dowiaduje się, że adres ip np. 10.0.0.3 ma nazwę "m68mt-d3"?
Tak zwane automatyczne uzupełnianie tablicy nazw serwera DNS. Ktoś wie?


edytowany 1x, ostatnio: akasei, 2017-01-20 21:30
Masz na myśli revDNS? - Patryk27 2017-01-20 22:33
Tak, chyba mi o to chodzi, jeśli jednostki odpowiadają na to żądanie z serwera. - akasei 2017-01-20 23:39
Na obsługę kolejnych 512 portów muszę przeznaczyć 4 KiB pamięci... 512 KiB na wszystkie. (ograniczę się na początek do pierwszych 1024 portów) - akasei 2017-01-21 15:52
Dobra, wstępny demon (usługa DNS) gotowa - teraz trzeba dopisać procedurę (na poziomie systemu plików) wyszukującą w pliku poszukiwany ciąg znaków (/etc/hosts). Zrezygnuję z wczytywania tego pliku specjalnie do pamięci demona. - akasei dziś, 20:35

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 1, gości: 0, botów: 0

Użytkownik: akasei