Na lustrzance Canona też da się uruchomić Linuksa
Czy są na świecie jeszcze jakieś urządzenia, na których nie da się zainstalować Linuksa? Prawdopodobnie tak, ale z ich listy można skreślić lustrzanki firmy Canon. Grupa Magic Lantern, która zajmuje się modyfikowaniem oprogramowania aparatów EOS, zdołała uruchomić na kilku modelach aparatów Linuksa 3.19.
Informację o swoim osiągnięciu hakerzy przedstawili 1 kwietnia i przez jakiś czas udawali, że to kolejny żart. Później potwierdzili jednak, że naprawdę udało im się uruchomić Linuksa na aparatach i udostępnili źródła swojego bootloadera.
[Magic Lantern] Booting Linux Kernel 3.19 on Canon EOS DSLRs
Zaczęło się od tego, że odkryta została metoda uzyskania dostępu do ekranu z poziomu bootloadera. Hakerzy wiedzieli już, że mają do dyspozycji procesor ARM 946E-S i 256 lub 512 MB RAM-u, zależnie od modelu aparatu. Mieli także do dyspozycji kod pozwalający na drukowanie obrazu na ekranie, zarządzanie przerwaniami i wykonywanie niskopoziomowych operacji na karcie pamięci w modelach 600D i 5D3. Z czasem wypracowali także sposób obsługi zdarzeń przycisków. To pozwoliło na uzyskanie pełnej kontroli nad wbudowanym w aparaty komputerem i stworzyło podstawy dla portu jądra Linuksa 3.19.
Linux dla Canonów z tego samego obrazu będzie działć na modelach 60D, 600D, 7D, 5D2 i 5D3. Działa już alokacja pamięci, wypisywanie wiadomości diagnostycznych na ekran, montowanie ramdysku z systemem plików ext2, uruchamianie /bin/init z poziomu initrd oraz programu piszącego Hello world. W dalszych etapach rozwijana będzie przestrzeń użytkownika, a tym interfejs graficzny.
To osiągnięcie samo w sobie nie jest szczególnie praktyczne i nie niesie bezpośrednich korzyści dla użytkowników. Ciekawostki przyrodnicze tego typu potrafią jednak przynosić ciekawe konsekwencje. Już pojawiły się spekulacje o możliwości uruchomienia na aparatach Canona GIMP-a (co nie ma najmniejszego sensu), ale z pewnością pojawią się bardziej praktyczne rozwiązania. Poza tym historia Androida pokazuje, że systemy dla aparatów mogą rozwinąć skrzydła.
Szczegóły projektu oraz źródła bootloadera można znaleźć na forum grupy.