Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Nevar

Strony: [1] 2
1
Pomoc / Odp: Witajcie
« dnia: Luty 02, 2017, 15:55:26 »
Witam,
Ja też czasami wpadam zobaczyć co się dzieje :)
ale czy grykan to nie jest czasem fake user?

2
Asembler / Odp: Propozycja współpracy
« dnia: Grudzień 03, 2014, 20:57:59 »
Myslec to na pewno bardzo czesto mi sie zdarza. Jednak tyle czasu wolnego co posiadam nie pozwolilo by mi przy tym siedziec na 100%
Wiec na razie nic  nie robie czy tez robie ale inne rzeczy, ale mam nadzieje sie jeszcze OSDEV kiedys zajac.

3
OS-Dev / Odp: Przerwania PCI
« dnia: Maj 24, 2014, 11:35:00 »
Z tego co ja zrozumiałem to są 4 linie przerwań oznaczone A B C D, i urządzenia PCI są podłączone po kilka do tej samej linii. Na płycie głównej jest to jakoś fizycznie rozwiązane jaki slot PCI z jakim przerwaniem (ABCD) jest powiązany. A jeżeli chodzi i inne urządzenia typu dyski do tez pewnie jest to jakoś w sprzęcie na stałe zapięte. Co pewnie można z tych tablic ACPI czy MP odczytać.

Obsługa takich przerwań przypuszczam, że wygląda tak: przychodzi przerwanie A to w handlerze musisz sprawdzić jakie urządzenia są na tym przerwaniu i sprawdzić jakoś które z nich wymaga obsługi. Jak to sprawdzić to nie wiem, może przez odczytywanie jakiegoś stanu z rejestrów urządzeń na PCI.

Musze odświeżyć swoje info o tym bo dość dawno o tym czytałem i mogłem już coś zapomnieć. No i nie implementowałem tego praktycznie więc to raczej nie sprawdzone info.

4
OS-Dev / Odp: Przerwania PCI
« dnia: Maj 23, 2014, 12:12:37 »
Nigdy nie doszedlem do programowania PCI wiec nie wiem czy ci pomoge. Jednak slyszalem o czyms takim jak MSI jezeli chodzi o przerwania i PCI. Moge jednak podlinkowac wiki http://en.wikipedia.org/wiki/Message_Signaled_Interrupts

5
Asembler / Odp: Wataszka!
« dnia: Maj 19, 2014, 12:15:22 »
Jestem zajety pisaniem OSa :D

6
Asembler / Odp: Wataszka!
« dnia: Maj 03, 2014, 18:30:18 »
O kurde, no jedyne co mozna powiedziec to BRAWO !

7
Asembler / Odp: Propozycja współpracy
« dnia: Styczeń 07, 2014, 22:37:57 »
Czemu by nie, propozycja nadal aktualna. Przynajmniej można pogadać i zobaczymy co z tego będzie.

8
Pomoc / Odp: konwersja z liczb hex na bin
« dnia: Grudzień 04, 2013, 12:37:03 »
Co prawda nie jestem ekspertem od tego procka, ale działa to podobnie we wszystkich.

Procedura "konwersja" robi normalną zamianę liczby szesnastkowej na dziesietną.
Chodzi jak wiadomo o to, że rejestry są binarne lub szesnastkowe jezeli bierzemy grupy po 4 bity. Konwersja hex to dec to jest zmiana zapisu tak zeby miec kolejne cyfry dziesietne zapisane oddzielnie od siebie. Zwykle jest to potrzebne np jezeli chcesz podac każdą z cyfr na inną część wyświetlacza segmentowego lub po prostu wypisać na ekran w postaci znaków ASCII.
Taki zapis oddzielny cyfr oczywiscie musi się mieścić w zakresie 0-9 bo to normalny zakres dla liczb dziesietnych i szesnastkowych jednocześnie.

Reazlizowane jest to tak:

"konwersja" przyjmuje 1 parametr w rejestrze "a" - to jest liczba ktora sklada sie max z 3 znakow dziesietnych (max: 255)
"konwersja" zwraca
w dolnej czesci R5 (4bity młodsze) ilosc jednosci liczby "a"
w gornej czesci R5 (4bity starsze) ilosc dziesiatek liczby "a"
w R4 ilosc setek liczby "a"

realizowane jest to przez serie dzieleń (np a = 245)
najpierw dzielisz a / 100 -> wynik ląduje w "a", a reszta w "b", "a" ma już liczbę setek wiec leci do R4 ( 245 / 100 => a = 2, b = 45 )
potem dzielisz reszte z poprzedniego dzialania przez 10 żeby otrzymać liczbę dziesiątek
a = b ; do a reszta z poprzedniego dzielenia ( a = 45 )
a / 10 -> wynik ląduje w "a" a reszta w "b", "a" ma liczbe dziesiatek "b" ma liczbe jednosci ( 45 / 10 => a = 4, b = 5 )
dalej już jest tylko upakowanie za pomoca "swapa" i "or" jedności i dziesiątek do jednego rejestru R5
na końcu masz R4 = 0x02, R5 = 0x45

9
Asembler / Odp: Propozycja współpracy
« dnia: Listopad 19, 2013, 16:28:37 »
ASM jest ciężki do utrzymania na dłuższą metę. Wiem to z własnego doświadczenia bo po przerwie kilku miesięcznej nic nie rozumiałem z kodu. W tym sensie, że za dużo jest kodu względem treści. Przez ostatni rok udało mi się trochę podszkolić i docenić programowanie obiektowe.
Dlatego też cały czas staram się obadać jak można napisać kernel w C++ i to nawet najwcześniej jak tylko się da. Dodatkowo kombinuje cały czas z ARMami. Chciał bym skompletować jakieś proste środowisko do kompilacji ARM/x86+qemu+cmake i odpowiednie toolchainy.
Obecnie jestem na etapie implementowania wsparcia dla operatorów C++ i wołania konstruktorów itp, ale to jest do do zrobienia.

Najważniejsze zostają jak zwykle nie sprecyzowane założenia co do samego systemu itp. :P

10
Asembler / Odp: Propozycja współpracy
« dnia: Sierpień 26, 2013, 00:14:13 »
Wiadomo, że na początku bez asm się nie obejdzie. Miałem zamiar podzielić kernela na dwie części i pierwszą napisać w C, a drugą w C++. Ta część C++ miała by być w miarę możliwości na takim poziomie niezależnym od sprzętu.

O racja zapomniałem o kanale IRC, postaram się tam wpadać częściej.

11
Asembler / Odp: Propozycja współpracy
« dnia: Kwiecień 12, 2013, 00:42:15 »
Ogłoszenie jest jeszcze aktualne. Pomysł jednak nieznacznie się zmienił i teraz mam zamiar programować system głównie w języku C. Więcej informacji udzielam bezpośrednio na mailu.

12
Asembler / Odp: Jak uzyskać liczbę wątków CPU?
« dnia: Luty 26, 2013, 16:07:44 »
Na początek to trzeba uściślić terminy bo nie bardzo rozumiem termin wątku. Ogólnie wątek jest definicją raczej programistyczną niż sprzętową.

W samym komputerze możesz mieć do kilku procesorów CPU na płycie głównej, ale to rozwiązanie jest rzadko spotykane. Sam CPU w swojej budowie może mieć kilka rdzeni czy też w jednym układzie montowane jest kilka procesorów dzielących część swoich zasobów, ale będących oddzielnymi jednostkami obliczeniowymi. Taką najmniejszą jednostkę chyba określa się nazwą "procesor logiczny".

Edit:

Wydaje mi się, że za pomocą samego CPUID nie można pobrać ilości procesorów logicznych. Można to na pewno zrobić po przez wysłanie sygnału INIT do wszystkich i zliczenie ile z nich się zgłosi, ale to raczej przy starcie systemu takie rzeczy się robi. Można też przeszukać w tablicach ACPI. Można też szukać w tablicach MP, ale one chyba nie zawsze mogą występować w pamieci. Ja korzystałem w swoim systemie jedynie z tablic MP i generalnie znalazlem tam wszystkie moje rdzenie z laptopa.

13
Asembler / Odp: RS232 / USB
« dnia: Grudzień 10, 2012, 09:22:15 »
Dzieki Nevar w to po prostu ciężko uwierzyć wspaniałe cacko i to za tą cenę ?! :) . Trochę intuicyjnie idę tropem ale właśnie to chyba rozwiązuje moje problemy ( chciałęm uiknąć lutownicy bo to by katastrofa była ). Z programowaniem ... no było by elegancko gdyby nie jedno ale ... Linux - nie mam żadnego doswiadczenia programistycznego z tym systemem. Szczerze miałem nadzieje, że jakoś uda mi się uniknąć linuxa :) ... Ale trudno nikt nie mówił, że będzie łatwo. Chciał bym tylko zoptymalizować jeszcze podejście do sprawy zanim zacznę ogarniać materiał ale wstrzymam się z pytaniami do czasu zakupu urządzenia.

Poczytaj sobie o instalacji jakiegoś systemu np. Debian i postaraj się zainstalować na PC jeżeli masz wolną partycje lub dysk. Trochę poćwiczysz i załapiesz podstawowe komendy. Tak naprawdę to system jak każdy inny, a do pracy w konsoli nadaje się o wiele lepiej niż Windows.

Ps. Widzę w opisie procesor ARM. Czy to oznacza, że http://arm.flatassembler.net/ bedzie dobre do programowania tego urządzenia ? była by to zaleta ponieważ udało by mi się pozostać w swojej ulubionej sładni. Poza tym kiedyś czytałem ogólne info na temat ARM'ów geneza powstania, obecne zastosowania itp. wynika z tego ( w mojej opini ), że to będzie najbliższa przyszłość co jeszcze bardziej zachęca do tematu.
Przypuszczam że generalnie schemat tworzenia programu w FASM zostanie  ten sam, jednak na pewno trzeba się przygotować na inne mnemoniki instrukcji i większą ilość argumentów niż w x86.

14
Asembler / Odp: RS232 / USB
« dnia: Grudzień 07, 2012, 16:02:53 »
No widzisz to nie są proste rzeczy. Głównie ze względu na to, że potrzeba dużo doświadczenia żeby wiedzieć co i gdzie. Na pewno przyda się podstawowa umiejętność z programowaniu najlepiej w C. Potem zalecam podstawową wiedzę z używania systemu Linux. Potem kupujesz coś takiego: http://piregistration.element14.com/raspberryPi1.html, za ok 100zł. Taki mini komputer jest w stanie zrobić wszystko to co twój PC tylko jest mniejszy/słabszy ale też bardziej oszczędny. Prawdopodobnie w zestawie dostaniesz gotowy system Linux, więc wszystko będzie śmigać. Jak nie to można zaciągnąć gotowca z sieci. Te płytki są ostatnio bardzo popularne ze względu na swoją cenę.

Jak masz tam Linux'a to możesz generalnie robić co tylko ci się zapragnie. Ale jak mówiłem nie jest to łatwe i generalnie bez bezpośredniej pomocy to zajmie ci to sporo czasu. No kasy też trzeba trochę zainwestować.

15
Asembler / Odp: RS232 / USB
« dnia: Grudzień 04, 2012, 09:01:43 »
Jak widać idzie nowe. Pamiętam jak się kiedyś zmartwiłem, że w moim nowym komputerze nie ma portu LPT.

Problem z brakiem portu COM w komputerach PC jest rozwiązywany po przez specjalne kable przejściówki USB<->COM zawierające w sobie układ cyfrowy dokonujący konwersji. Kabel kupisz za niewysoką cenę w każdym komputerowo/elektronicznym sklepie:
http://www.nokaut.pl/inne-pozostale/esperanza-kabel-usb-2-0-rs232-1-5m-bezbarwny-niebieskie-koncowki.html
Oczywiście trzeba będzie zainstalować w systemie Windows odpowiedni sterownik żeby kabel był widziany jako port COM. Sterowniki można znaleźć w internecie, trzeba jedynie wiedzieć na jakim układzie cyfrowym oparty jest kabel, żeby znaleźć odpowiedni sterownik.

Strony: [1] 2