
Სარჩევი:
2025 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2025-01-23 14:50

ეს გაკვეთილი მოიცავს Raspberry Pi– ზე 64 ბიტიანი რეალურ დროში ბირთვის მშენებლობისა და მონტაჟის პროცესს. RT Kernel გადამწყვეტი მნიშვნელობა აქვს ROS2 და სხვა რეალურ დროში IOT გადაწყვეტილებების სრულ ფუნქციონირებას.
ბირთვი დაყენებულია x64 დაფუძნებულ Raspbian– ზე, რომლის მოპოვებაც აქ შეგიძლიათ
Შენიშვნა. ეს გაკვეთილი, მართალია, მოითხოვს Linux ოპერაციული სისტემის ძირითად ცოდნას.
ასევე ამ პლატფორმის შეზღუდვების გამო ყველა http ბმულს აკლია h. მათი მარტივად დასაფიქსირებლად დაამატეთ "h" ბმულის წინა ნაწილში
მარაგები
x64 დაფუძნებული კომპიუტერი მუშაობს Linux– ზე
Raspberry Pi 4B Raspbian 64 -ით უკვე დაინსტალირებულია
ინტერნეტთან კავშირი.
ნაბიჯი 1: მიიღეთ საჭირო ინსტრუმენტები
უპირველეს ყოვლისა, ჩვენ უნდა შევარჩიოთ დამცავი ინსტრუმენტები.
მათი მიღება შესაძლებელია Linux ტერმინალში შემდეგი ბრძანებების შესრულებით
sudo apt-get install build-essential libgmp-dev libmpfr-dev libmpc-dev libisl-dev libncurses5-dev bc git-core bison flexsudo apt-get install libncurses-dev libssl-dev
ნაბიჯი 2: შეადგინეთ მშობლიური ინსტრუმენტები ჯვრის შედგენისთვის
შემდეგი ნაბიჯი არის ინსტრუმენტების მომზადება და შედგენა ჩვენი ბირთვის ჯვარედინი შედგენისთვის.
პირველი ინსტრუმენტი, რომელსაც ჩვენ დავაინსტალირებთ არის Binutils, ეს გაკვეთილი შემოწმებულია binutils ვერსიით 2.35.
cd ~/Downloadswget ttps: //ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2tar xf binutils-2.35.tar.bz2cd binutils-2.35 /./ კონფიგურაცია --prefix =/opt/aarch64- სამიზნე = aarch64-linux-gnu -disable-nls
კონფიგურაციის დასრულების შემდეგ ჩვენ გვჭირდება პროგრამის შედგენა შემდეგი ბრძანებების გამოყენებით
გააკეთე -jx
sudo make install
სადაც -jx ნიშნავს რამდენ სამუშაოს გსურთ გაუშვათ i parrarell. ცერის წესი არის ის, რომ ის არ აღემატებოდეს თქვენი სისტემის ძაფების რაოდენობას. (მაგალითად გააკეთე -j16)
და ბოლოს ჩვენ გვჭირდება გზის ექსპორტი
ექსპორტი PATH = $ PATH:/opt/aarch64/bin/
ჩვენ ვაგრძელებთ GCC– ის მშენებლობას და მონტაჟს
cd..wget ttps: //ftp.gnu.org/gnu/gcc/gcc-8.4.0/gcc-8.4.0.tar.xztar xf gcc-8.4.0.tar.xzcd gcc-8.4.0/. /contrib/download_prerequisites./configure --prefix =/opt/aarch64-Target = aarch64-linux-gnu -with-newlib-უსათაუროდ \-გამორთვა-nls-გამორთვა-გაზიარება-გამორთვა-ძაფები --disable-libssp-disal-ათობითი ათწილადი \-გამორთვა-libquadmath-გამორთვა-libvtv-გამორთვა-libgomp-გამორთვა-ლიბატომიური \-ჩართვა-ენები = c-გამორთვა-მრავალმხრივი
ვიდრე იგივე, რაც ადრე ვაკეთებდით და ვამონტაჟებდით ჩვენს შემდგენელს
გააკეთე ყველა gcc -jx
sudo make install-gcc
თუ ყველაფერი შეუფერხებლად წავიდა ბრძანების შემდეგ
/opt/aarch64/bin/aarch64-linux-gnu-gcc -v
უნდა გამოეხმაურო მსგავს პასუხს.
ux-gnu-gcc -v ჩაშენებული სპეციფიკაციების გამოყენებით. COLLECT_GCC =/opt/aarch64/bin/aarch64-linux-gnu-gcc COLLECT_LTO_WRAPPER =/opt/aarch64/libexec/gcc/aarch64-linux-gnu/8.4.0/lto-wrapper სამიზნე: aarch64-linux-gnu კონფიგურაცია:./configure --prefix =/opt/aarch64 --target = aarch64-linux-gnu-with-newlib-გარეშე-სათაურები-disal-nls-გამორთული-გაზიარებული-გამორთული ძაფები-disable-libssp --disable-decimal-float --disable-libquadmath-disal-libvtv-disal-libgomp-disal-libatomic-enable-languages = c --disable-multilib თემის მოდელი: ერთი gcc ვერსია 8.4.0 (GCC)
ნაბიჯი 3: ბირთვის შეკვრა და ბირთვის კონფიგურაცია
ახლა დროა მივიღოთ ჩვენი ბირთვი და RT პატჩი.
ეს გაკვეთილი გამოიყენებს rpi ბირთვის v 5.4 და RT პატჩს RT32. ეს კომბინაცია კარგად გამომივიდა. თუმცა ყველაფერი კარგად უნდა მუშაობდეს სხვადასხვა ვერსიით.
mkdir ~/rpi-kernel
cd ~/rpi-kernel git clone ttps: //github.com/raspberrypi/linux.git -b rpi-5.4.y wget ttps: //mirrors.edge.kernel.org/pub/linux/kernel/projects/rt /5.4/older/patch-5.4.54-rt32.patch.gz mkdir kernel-out cd linux
შემდეგ ამოიღეთ პატჩი.
gzip -cd../patch-5.4.54-rt32.patch.gz | patch -p1 -verbose
და კონფიგურაციის ინიციალიზაცია Rpi 4B– სთვის
გააკეთეთ O =../kernel-out/ARCH = arm64 CROSS_COMPILE =/opt/aarch64/bin/aarch64-linux-gnu- bcm2711_defconfig
ამის შემდეგ ჩვენ უნდა შევიდეთ მენოკონფიგურაციაში
გააკეთეთ O =../kernel-out/ARCH = arm64 CROSS_COMPILE =/opt/aarch64/bin/aarch64-linux-gnu- menuconfig
როდესაც ის გააქტიურდება, ჩვენ გვჭირდება არსებული კონფიგურაცია, შემდეგ გადადით
ზოგადი -> წინასწარი მოდელი და აირჩიეთ რეალურ დროში ვარიანტი.
ვიდრე ვინახავთ ახალ კონფიგურაციას და გამოვალთ მენიუდან.
ნაბიჯი 4: RT ბირთვის შექმნა
ახლა მისი შედგენის დროა. გაითვალისწინეთ, რომ ამას შეიძლება დიდი დრო დასჭირდეს თქვენი კომპიუტერის შესაძლებლობებიდან გამომდინარე.
make -jx O =../ kernel-out/ ARCH = arm64 CROSS_COMPILE = aarch64-linux-gnu-
როგორც ადრე -jx ნიშნავს სამუშაოების რაოდენობას. წარმატებული შედგენის შემდეგ ჩვენ უნდა ჩავალაგოთ ჩვენი ბირთვი და გავაგზავნოთ ჟოლოს პიზე. ამისათვის ჩვენ ვასრულებთ შემდეგ ბრძანებებს.
ექსპორტი INSTALL_MOD_PATH = ~/rpi-kernel/rt-kernelexport INSTALL_DTBS_PATH = ~/rpi-kernel/rt-kernelmake O =../kernel-out/ARCH = arm64 CROSS_COMPILE = aarch64-linux-gnu- modules_in out/arch/arm64/boot/Image../rt-kernel/boot/kernel8.imgcd $ INSTALL_MOD_PATHtar czf../rt-kernel.tgz *cd..
ახლა ჩვენი ბირთვი უნდა იყოს rt-kernel.tgz არქივში და მზად არის გასაგზავნად და დასაყენებლად.
ნაბიჯი 5: ახალი ბირთვის დაყენება
ჩვენი ბირთვის raspbperry– ში გაგზავნის უმარტივესი გზაა scp– ის გამოყენებით.
ჩვენ უბრალოდ ვასრულებთ შემდეგ ბრძანებას.
scp rt-kernel.tgz pi@:/tmp
ახლა ჩვენ უნდა შეხვიდეთ ჩვენს პიში ssh– ის საშუალებით და გავხსნათ ჩვენი ბირთვი.
სშ პი@
შესვლისას ჩვენ ვაკოპირებთ ჩვენს ფაილებს შემდეგი ბრძანებების გამოყენებით.
cd/tmptar xzf rt -kernel.tgz cd boot sudo cp -rd */boot/cd../lib sudo cp -dr */lib/cd../ overdoys sudo cp -dr */boot/overlays cd../ broadcom sudo cp -dr bcm* /ჩატვირთვა /
ამის შემდეგ რჩება მხოლოდ /boot/config.txt ფაილის რედაქტირება და შემდეგი ხაზის დამატება.
ბირთვი = ბირთვი 8.img
Pi გადატვირთვის შემდეგ ყველაფერი კარგად უნდა მუშაობდეს.
იმის შესამოწმებლად, თუ ახალი ბირთვი წარმატებით იყო დაინსტალირებული, შეგიძლიათ შეასრულოთ
უსახელო -ა
ბრძანება
გირჩევთ:
ნახევარი ნაბიჯი: 5 ნაბიჯი (სურათებით)

სემინარი: IntroduçãoNeste projeto, você construirá um an sistema de semáforos: არსებობს 3 LED ნათურები სხვადასხვა ბირთვით (verde, amarelo e vermelho) para imitar os semáforos dos carros; არსებობს 2 LED ნათურები სხვადასხვა ბირთვით (verde და vermelho) იმისთვის, რომ გააკეთოთ
Arduino Uno თევზის მიმწოდებელი 6 იაფი და მარტივი ნაბიჯი!: 6 ნაბიჯი

Arduino Uno თევზის მიმწოდებელი 6 იაფი და მარტივი ნაბიჯი! შინაური ცხოველების მქონე ადამიანებს, ალბათ, იგივე პრობლემა ჰქონდათ, როგორც მე: შვებულება და დავიწყება. მე მუდმივად მავიწყდებოდა ჩემი თევზის გამოკვება და ყოველთვის ვცდილობდი ასე გამეკეთებინა სანამ ის წავიდოდა
აკუსტიკური ლევიტაცია Arduino Uno– ით ეტაპობრივად (8 ნაბიჯი): 8 ნაბიჯი

აკუსტიკური ლევიტაცია Arduino Uno– სთან ერთად ეტაპობრივად (8 საფეხური): ულტრაბგერითი ხმის გადამცემები L298N Dc მდედრობითი ადაპტერი დენის წყაროს მამაკაცის dc pin Arduino UNOBreadboard და ანალოგური პორტები კოდის გადასაყვანად (C ++)
Raspbian Buster- ის დაყენება Raspberry Pi 3 - Raspbian Buster– ით დაწყება Raspberry Pi 3b / 3b+: 4 ნაბიჯი

Raspbian Buster– ის დაყენება Raspberry Pi 3 | Raspbian Buster– ით დაწყება Raspberry Pi 3b / 3b+: გამარჯობა ბიჭებო, ახლახანს Raspberry pi ორგანიზაციამ წამოიწყო ახალი Raspbian OS, რომელსაც ეწოდება Raspbian Buster. ეს არის Raspbian– ის ახალი ვერსია Raspberry pi– სთვის. ასე რომ, დღეს ამ ინსტრუქციებში ჩვენ ვისწავლით თუ როგორ უნდა დააინსტალიროთ Raspbian Buster OS თქვენს Raspberry pi 3 – ზე
როგორ დააყენოთ Windows Kernel Debugger თქვენს ქსელში: 6 ნაბიჯი

როგორ დავაყენოთ Windows Kernel Debugger თქვენს ქსელში: გამართვა არის პოპულარული ინსტრუმენტი, რომელიც გამოიყენება შეცდომების ძირეული მიზეზის დასადგენად. შეცდომას შეუძლია გამოავლინოს საკუთარი თავი სხვადასხვა გზით. მას შეუძლია გამოიწვიოს სისტემის კრახი (ცისფერი ეკრანი/BSOD), მას შეუძლია გამოიწვიოს პროგრამის კრახი, შეიძლება გამოიწვიოს თქვენი სისტემის გაყინვა fe