Pracowałem we wbudowanym systemie operacyjnym, takim jak uCOS, ThreadX. Chociaż kodowałem aplikacje w systemie Linux, teraz planuję rozpocząć naukę jądra systemu Linux. Mam kilka pytań dotyczących środowiska.
Która z najlepszych dystrybucji zawiera łatwe w użyciu narzędzia do programowania jądra? (do tej pory korzystałem z RHEL i Fedory. Chociaż dobrze się z nimi czuję, wygląda na to, że Ubuntu ma wbudowane skrypty do łatwej kompilacji jądra
make_kpkg
, itp.)Czy możesz opisać najlepszą konfigurację do debugowania jądra? Podczas debugowania innych wbudowanych systemów operacyjnych użyłem portu szeregowego do zrzucenia postępu, JTAG itp. Z jakiego rodzaju konfiguracji korzystają deweloperzy jądra Linuksa? (Czy mój testowany komputer z portem szeregowym wystarczy na moje potrzeby? Jeśli tak, jak skonfigurować jądro, aby zrzut na port szeregowy?) Planuję przekierować komunikaty jądra do konsoli szeregowej, które zostaną odczytane na moim laptopie.
Jakie narzędzie jest najlepsze do debugowania i śledzenia kodu jądra? Jak wspomniano wcześniej, czy konsola szeregowa jest jedynym sposobem? Czy istnieje jakiś interfejs IDE / JTAG na PC?