Миний нэрийн хуудас Linux үйлдлийн системтэй

-аас нийтлэлийн орчуулга блог шуудан инженер Жорж Хиллиард

Миний нэрийн хуудас Linux үйлдлийн системтэй
Товших боломжтой

Би суулгагдсан системийн инженер мэргэжилтэй. Би чөлөөт цагаараа ирээдүйн системүүдийн дизайнд ашиглаж болох зүйл эсвэл өөрийн сонирхолд нийцсэн зүйлийг ихэвчлэн хайж байдаг.

Ийм талбаруудын нэг нь Линуксыг ажиллуулж чадах хямд компьютерууд бөгөөд хямд байх тусмаа сайн. Тиймээс би ойлгомжгүй процессоруудын гүн туулайн нүх ухсан.

Би "Эдгээр процессорууд маш хямд тул тэдгээрийг бараг үнэгүй өгөх боломжтой" гэж бодсон. Хэсэг хугацааны дараа Linux-д зориулж нэрийн хуудас хэлбэрээр нүцгэн карт хийх санаа надад төрсөн.

Энэ тухай нэг удаа бодсон чинь үнэхээр гайхалтай зүйл болно гэж шийдсэн. Би аль хэдийн байна харсан цахим бизнес картууд нь энэ нь, мөн тэд флаш картыг дуурайх, гэрлийн чийдэнг анивчуулах, тэр ч байтугай утасгүй өгөгдөл дамжуулах гэх мэт янз бүрийн сонирхолтой чадвартай байсан. Гэхдээ би Линукс дэмжлэгтэй нэрийн хуудас хараагүй.

Тиймээс би өөрийгөө нэг болгосон.

Энэ бол бүтээгдэхүүний эцсийн хувилбар юм. Buildroot-оор бүтээгдсэн Линуксийн миний тусгай хувилбарыг ажиллуулж байгаа иж бүрэн хамгийн бага ARM компьютер.

Миний нэрийн хуудас Linux үйлдлийн системтэй

Энэ нь буланд USB порттой. Хэрэв та үүнийг компьютерт холбовол энэ нь 6 секундын дотор ачаалах бөгөөд флаш карт болон виртуал цуваа порт хэлбэрээр харагдах бөгөөд та картын бүрхүүлд нэвтэрч болно. Флэш диск дээр README файл, миний намтар, миний хэд хэдэн зураг байна. Бүрхүүл нь хэд хэдэн тоглоомтой, Unix сонгодог, аз, хулгай зэрэг тоглоом, 2048 тоглоомын жижиг хувилбар, MicroPython орчуулагчтай.

Энэ бүгдийг маш жижиг 8 MB флаш чип ашиглан хийдэг. Ачаалагч нь 256 КБ багтаамжтай, цөм нь 1,6 МБ багтаамжтай, үндсэн файлын систем бүхэлдээ 2,4 МБ багтаамжтай. Тиймээс виртуал флаш дискэнд маш их зай үлдсэн байна. Мөн хэн нэгэн хадгалахыг хүссэн зүйлээ хийх тохиолдолд бичих боломжтой гэрийн лавлах байдаг. Энэ бүхэн мөн флаш чип дээр хадгалагддаг.

Төхөөрөмж бүхэлдээ 3 доллараас бага үнэтэй. Энэ нь өгөхөд хангалттай хямд юм. Хэрэв та надаас ийм төхөөрөмж авсан бол энэ нь би танд сэтгэгдэл төрүүлэхийг хичээж байна гэсэн үг юм.

Зураг төсөл боловсруулах, барих

Би өөрөө бүх зүйлийг зохион бүтээж, угсарсан. Энэ бол миний ажил бөгөөд би үүнд дуртай бөгөөд хоббидоо хангалттай хямд эд анги олоход тулгарч буй бэрхшээлүүдийн ихэнх нь байсан.

Процессорын сонголт нь төслийн өртөг, боломжид нөлөөлсөн хамгийн чухал шийдвэр байв. Өргөн цар хүрээтэй судалгаа хийснийхээ дараа би Allwinner-ийн харьцангуй бага мэддэг F1C100s процессорыг сонгосон бөгөөд энэ нь зардлаа оновчтой (өөрөөр хэлбэл, маш хямд). Нэг багц нь RAM болон CPU хоёуланг нь агуулдаг. Би Taobao дээр процессор худалдаж авсан. Бусад бүх эд ангиудыг LCSC-ээс худалдаж авсан.

Би JLC компанид самбар захиалсан. Тэд надад 8 доллараар 10 хувь хийсэн. Тэдний чанар нь ялангуяа үнийн хувьд гайхалтай юм; OSHPark шиг цэвэрхэн биш ч сайхан харагдаж байна.

Би эхний багцыг царцсан хар өнгөтэй болгосон. Тэд үзэсгэлэнтэй харагдаж байсан ч маш амархан бохирдсон.

Миний нэрийн хуудас Linux үйлдлийн системтэй

Эхний багцад хэд хэдэн асуудал гарсан. Нэгдүгээрт, USB холбогч нь ямар ч USB порт руу найдвартай суулгахад хангалттай урт биш байсан. Хоёрдугаарт, флэш замуудыг буруу хийсэн, гэхдээ би контактуудыг нугалахад үүнийг даван туулсан.

Миний нэрийн хуудас Linux үйлдлийн системтэй

Бүх зүйл ажиллаж байгааг шалгасны дараа би шинэ багц самбар захиалсан; Та тэдгээрийн аль нэгнийх нь зургийг нийтлэлийн эхэнд харж болно.

Эдгээр бүх жижиг бүрэлдэхүүн хэсгүүд нь жижиг хэмжээтэй тул би дахин урсгалтай гагнуурын аргыг ашиглахаар шийдсэн хямд зуух. Би лазер зүсэгч ашиглах боломжтой тул ламинаторын хальснаас гагнуурын стенил хайчлахад ашигласан. Stencil нь маш сайн болсон. Процессорын контактуудын 0,2 мм диаметртэй нүхнүүд нь өндөр чанартай үйлдвэрлэлийг хангахын тулд онцгой анхаарал шаарддаг - лазерыг зөв төвлөрүүлж, түүний хүчийг сонгох нь чухал байв.

Миний нэрийн хуудас Linux үйлдлийн системтэй
Бусад хавтангууд нь зуурмагийг түрхэж байхдаа самбарыг барихад сайн ажилладаг.

Би гагнуурын оо түрхэж, бүрэлдэхүүн хэсгүүдийг гараар байрлуулсан. Процессын явцад хар тугалга хаана ч ашиглагдахгүй байхыг би баталгаажуулсан - бүх самбар, эд анги, зуурмаг нь стандартад нийцсэн RoHS - би хүмүүст тараахдаа миний мөс чанар намайг зовоохгүйн тулд.

Миний нэрийн хуудас Linux үйлдлийн системтэй
Би энэ багцад бага зэрэг алдаа гаргасан боловч гагнуурын зуурмаг нь алдааг уучилж, бүх зүйл сайхан болсон

Бүрэлдэхүүн хэсэг бүрийг байрлуулахад 10 секунд зарцуулсан тул би бүрэлдэхүүн хэсгүүдийн тоог хамгийн бага байлгахыг хичээсэн. Газрын зургийн дизайны талаархи дэлгэрэнгүй мэдээллийг өөр зүйлээс уншиж болно миний дэлгэрэнгүй нийтлэл.

Материалын жагсаалт, өртөг

Би хатуу төсөвт баригдсан. Мөн нэрийн хуудас нь зориулалтын дагуу болсон - Би үүнийг өгөхөөс татгалзахгүй байна! Мэдээжийн хэрэг, би үүнийг хүн бүрт өгөхгүй, учир нь хуулбар бүрийг хийхэд цаг хугацаа шаардагдах бөгөөд нэрийн хуудасны үнэд миний цагийг тооцдоггүй (энэ нь үнэ төлбөргүй).

Бүрэлдэхүүн хэсэг
Зардлын

F1C100s
$1.42

ПХБ-ийн
$0.80

8MB флэш
$0.17

Бусад бүх бүрэлдэхүүн хэсгүүд
$0.49

Нийт
$2.88

Мэдээжийн хэрэг, хүргэх гэх мэт тооцоолоход хэцүү зардал (энэ нь хэд хэдэн төсөлд зориулагдсан бүрэлдэхүүн хэсгүүдийн дунд хуваарилагдсан тул) байдаг. Гэсэн хэдий ч Линуксийг дэмждэг хавтангийн хувьд энэ нь маш хямд байх нь гарцаагүй. Энэхүү задаргаа нь компаниудад хамгийн бага үнийн сегментэд төхөөрөмж үйлдвэрлэхэд хэр их зардал гардаг талаар сайн санааг өгдөг: энэ нь компаниудад миний зардлаас ч бага зардалтай гэдэгт итгэлтэй байж болно!

Онцлог

Юу хэлэх вэ? Энэхүү карт нь маш их задарсан Линуксыг 6 секундын дотор ачаална. Хэлбэрийн хүчин зүйл болон өртөгөөс шалтгаалан карт нь оролт, сүлжээний дэмжлэг эсвэл хүнд програмуудыг ажиллуулахад чухал хэмжээний санах ойгүй. Гэсэн хэдий ч би програм хангамжийн зураг дээр олон сонирхолтой зүйлийг багтааж чадсан.

USB

USB-ээр хийж болох олон сайхан зүйл байсан ч хүмүүс миний нэрийн хуудсыг туршиж үзэхээр шийдсэн бол илүү сайн ажиллах боломжтой байх үүднээс хамгийн энгийн хувилбарыг сонгосон. Линукс нь картыг дэмжлэгтэйгээр "төхөөрөмж" шиг ажиллах боломжийг олгодог Гаджетын хүрээ. Би энэ процессорыг багтаасан өмнөх төслүүдээс зарим драйверуудыг авсан тул USB гаджетын хүрээний бүх функцэд хандах боломжтой болсон. Би урьдчилан үүсгэсэн флаш дискийг дуурайж, виртуал цуваа портоор дамжуулан бүрхүүлд хандах эрх олгохоор шийдсэн.

Бүрхүүл

Та root-ээр нэвтэрсний дараа цуврал консол дээр дараах програмуудыг ажиллуулж болно.

  • хулгайч: сонгодог Unix гянданд мөлхдөг адал явдалт тоглоом;
  • 2048: консол горимд 2048 оны энгийн тоглоом;
  • аз: янз бүрийн эелдэг үгсийн гаралт. Би бусад функцуудыг ашиглах боломжийг үлдээхийн тулд ишлэлийн мэдээллийн санг бүхэлд нь энд оруулахгүй байхаар шийдсэн;
  • микропитон: Маш жижиг Python орчуулагч.

Флаш дискний эмуляц

Эмхэтгэлийн явцад бүтээх хэрэгслүүд нь жижиг FAT32 дүрсийг үүсгэж, UBI хуваалтуудын нэг болгон нэмнэ. Linux Gadget Subsystem нь түүний компьютерийг хадгалах төхөөрөмж болгон танилцуулдаг.

Хэрэв та флаш диск дээр юу харагдахыг сонирхож байгаа бол үүнийг хийх хамгийн хялбар арга бол унших явдал юм эх сурвалжууд. Бас хэд хэдэн гэрэл зураг, миний намтар бий.

Нөөц

Эх сурвалжууд

Миний Buildroot модыг GitHub дээр байрлуулсан - thirtythreeforty/businesscard-linux. Процессорын USB татаж авах горимыг ашиглан суулгасан NOR флэш дүрс үүсгэх код байдаг. Энэ нь мөн бүх зүйлийг ажиллуулсны дараа Buildroot руу оруулсан тоглоом болон бусад програмуудын багцын бүх тодорхойлолттой. Хэрэв та төсөлдөө F1C100-г ашиглах сонирхолтой байгаа бол энэ нь маш сайн эхлэл байх болно. надаас асуулт асуу).
би хэрэглэсэн сайхан хийгдсэн төсөл Icenowy-ийн F4.9C1-д ​​зориулсан Linux v100, бага зэрэг шинэчлэгдсэн. Миний карт бараг стандарт v5.2 ажилладаг. Энэ нь GitHub дээр байгаа - thirtythreeforty/linux.
Би өнөөдөр дэлхийн F1C100-д ​​зориулсан U-Boot-ийн хамгийн шилдэг порттой гэж бодож байна, мөн энэ нь бас Icenowy-ийн ажил дээр үндэслэсэн (гайхалтай нь, U-Boot-ийг зөв ажиллуулах нь нэлээд бухимдалтай ажил байсан). Та үүнийг GitHub дээрээс авах боломжтой - thirtythreeforty/u-boot.

F1C100-ийн баримт бичиг

Би F1C100-ийн нэлээд сийрэг баримт бичгийг олсон бөгөөд би үүнийг энд нийтэлж байна:

Сонирхож байгаа хүмүүст зориулж оруулж байна. миний төслийн диаграм.

Миний нэрийн хуудас Linux үйлдлийн системтэй

дүгнэлт

Энэ төслийг боловсруулах явцад би маш их зүйлийг сурч мэдсэн - энэ бол дахин урсгалтай гагнуурын зуух ашиглах миний анхны төсөл юм. Би бас бичиг баримт муутай бүрэлдэхүүн хэсгүүдийн нөөцийг хэрхэн олох талаар сурсан.

Би суулгагдсан Линукс болон самбарын хөгжүүлэлтийн туршлагаа ашигласан. Төсөл алдаа дутагдалгүй ч миний бүх чадварыг сайн харуулж байна.

Embedded Linux-тэй ажиллах нарийн ширийнийг сонирхож буй хүмүүст би энэ тухай цуврал нийтлэлүүдийг уншихыг санал болгож байна. Embedded Linux-ийг эзэмших. Тэнд би өөрийн ярианы карттай адил жижиг, хямд Линукс системд зориулж програм хангамж, техник хангамжийг эхнээс нь хэрхэн бүтээх талаар дэлгэрэнгүй ярьдаг.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх