Wątek przeniesiony 2023-11-01 22:24 z Off-Topic przez Riddle.

Konkurencja Apple z procesorem RISC-V

0

Witamy, czy jest możliwe stworzenie laptopa z procesorem arm risc-v oraz napisanie na niego oprogramowania, systemu, sterowników i przeglądarki internetowej?
Laptop składany będzie w Chinach, za oprogramowanie będzie odpowiadał zespół 15 osób. Aby to szybko napisać można wybrać język o prostej składni jak Scala 3 Native lub Nim?
Sprzętu będzie mało więc napisanie na niego systemu i sterowników powinno zająć mało czasu. Najwięcej czasu zajmie przeglądarka, dodać do niej obsługę wyłącznie najnowszego standardu HTML5.1 i ES6? Sprawdzi się język bez klamer? Programy pisane w Pythonie są tworzone z szybkością myśli, wiec tu powinno być podobnie. Lenovo już produkuje takie laptopy z procesorem arm Snapdragon.
https://www.lenovo.com/us/en/p/laptops/thinkpad/thinkpadx/thinkpad--x13s-(13-inch-snapdragon)/len101t0019#tech_specs

1

Nie, nie jest możliwe. Nie w 15 osób, nie szybko i nie bez wielomilionowego budżetu. Co chcesz osiągnąć?

Chcesz napisać własny system i przeglądarkę internetową w 15 osób? W prosty system bym jeszcze uwierzył ale napisanie przeglądarki internetowej jest chyba obecnie bardziej skomplikowane niż napisanie systemu operacyjnego, jak już to coś oparte o chromium ale wtedy nie wiem jak z dostosowaniem tego pod swój system. Są już systemy, nawet windows na arm, może masz na myśli własną dystrybucję linuksa?

Prostsze języki dają kopa tylko w prostych projektach, nie ułatwiają rozwiązywania problemów na wyższym poziomie, a te będą takie same niezależnie od wybranego języka. Nie dają też pełnej kontroli i stwarzają potem trudne do rozwiązania problemy z wydajnością.

0

Chyba czegoś nie rozumiesz, napisanie kernela Windowsa, Linux lub BSD wymaga 1000 osób, ponieważ to mają być systemy ogólnego przeznaczenia. Czyli działać na każdy możliwy sprzęt hardware. Apple bardzo szybko wprowadza zmiany systemowe i zmianę języka z C, Objective-C na Swift w swoich nowych Macbookach z procesorami arm M3, ponieważ mają o wiele mniej kodu do napisania na specjalnie wyselekcjonowany sprzęt. Dlatego napisanie systemu na jednego laptopa z jednym procesorem, będzie wymagać jeszcze mniej czasu i nakładu pracy niż na urządzenia Apple.

0

no piszę że napisanie prostego systemu pod jedną konfigurację jest jeszcze wykonalne, ale co z resztą oprogramowania? Po co ci goły system bez ekosystemu? I po co pisać kolejny system, jakie miałyby być z tego korzyści?

0

Jakiegoś Linux-a można by próbować zbudować pod Twoja platformę, tylko że producent komputera musi go wspierać.
Najlepiej szukać komputera z dobrym wsparciem bo to jest bardzo ciężki temat, nie znajdziesz informacji na udemy, yutube, czy chatgpt.
Ewentualnie poszukać firmy ktora robi podobne systemy. W Polsce znam jedną, ale watpie aby byli zainteresowani
Napisanie od zera nie ma większego sensu

4
timor napisał(a):

Sprzętu będzie mało więc napisanie na niego systemu i sterowników powinno zająć mało czasu.

XD

Sorry za treść, ale nic lepszego nie mogłem wymyślić

0

Dam ci o wiele lepszy przykład, jeden Polak absolutnie sam, młody chłopak przed studiami, napisał w całości dość rozszerzony silnik gier na poziomie Unreal Engine 5, Unity czy RAGE. W bardzo trudnym i rozbudowanym języku programowania jakim jest C++. https://flaxengine.com/ Więc co to jest w 15 inżynierów oprogramowania stworzyć system operacyjny na jeden procesor arm? Z jakimś GUI, nie menadżerem okien tylko lekkim środowiskiem graficznym, nawet stworzenie takiego małego serwera wyświetlania jak Mir i Wayland, to też nie jest problem. Ponieważ to wszystko nie jest jeszcze rozbudowane i jest tylko jeden mały układ GPU.

Żeby tego jeszcze było mało wcześniej napisał silnik gier Celelej Engine w języku C#, a potem go przepisał do C++ i tak powstał Flax Engine. Ktoś kto pisze XD jest po prostu leniem i myśli że się nie da.

1
timor napisał(a):

Dam ci o wiele lepszy przykład, jeden Polak absolutnie sam, młody chłopak przed studiami, napisał w całości dość rozbudowany silnik gier na poziomie Unreal Engine 5, Unity czy RAGE. W bardzo trudnym i rozbudowanym języku programowania jakim jest C++.

Sam przed studiami napisałem prosty silnik gier w c++, co prawda porzuciłem to po pół roku ale nie jest to nic szczególnie skomplikowanego czy porównywalnego do pisania systemu operacyjnego, sterowników i przeglądarki. Największą trudnością jest zaimplementowanie dużej ilość featerów i zrobienie tego w taki sposób żeby było łatwe w użyciu. Taki silnik gier korzysta ze wszystkiego co jest pod spodem, DirectX / OpenGL i sterowniki zajmują się najbardziej skomplikowanymi zagadnieniami a te nie były pisane przez jedną osobę. No i powodzenia w ogóle ze skompletowaniem takiego zespołu który podoła.

0

Nie bierzesz tylko jednego pod uwagę, nie będziemy się męczyć z tymi starymi naleciałościami od języka C/C++ tylko ułatwimy sobie pracę przyspieszając ją wyborem prostego i nowoczesnego języka, takiego jak Nim lub Scala. To wszystko będzie tak proste i czytelne jak składnia Pythona, ale o wiele szybsze ponieważ te języki dodają statyczne typowanie. Osoby które piszą backend w tych językach, będą śmiało mogły programować oprogramowanie na ten sprzęt, sam Linus Torvalds powiedział że programowanie procesorów ARM jest o wiele przyjemniejsze niż Intela i AMD. Chciał Apple.

0

no napisałem już też o tym - prostszy język nie oznacza że szybciej skończysz projekt. Język jest najmniejszym problemem dla osób z doświadczeniem. Taki facebook wybrał PHP żeby było łatwiej a skończyło się na tym że musieli napisać własny kompilator tego języka

0

W przypadku facebooka oni wybrali złą technologię, Cukierberg ponoć zwędził kod od dwóch braci na studiach. Wybrano powolny i skryptowy język, z marnym debugowaniem dlatego że nie spodziewali się takiego zainteresowania. Tak samo było z twitterem, gdzie wybrano na startup Ruby, a potem przepisano do Scali. Tu też lichess wybrał od początku Scale, ponieważ liczył od razu na duży sukces. https://lichess.org/@/thibault/blog/lichess--scala-3/y1sbYzJX W przypadku takiego urządzenia jest inaczej od razu wybierasz język systemowy, w Nim możesz nawet ręcznie zarządzać pamięcią.

0

To myślisz że te wszystkie nowoczesne systemy operacyjne powstały od razu? RedoxOS, TheseusOS, WebOS, TizenOS, HarmonyOS? Jak zaczynał Steve Jobs i Wozniak, nie w garażu?

0

no właśnie to samo pytanie chcę zadać tobie. Chcesz nadrobić kilkadziesiąt lat rozwoju konkurencyjnych systemów w jakim czasie? Poza tym jeszcze raz napiszę - napisanie systemu operacyjnego to twój najmniejszy problem tutaj

0

Moje podejście jest innowacyjne jak wszystkich wielkich ludzi po Psychodelikach, wasza mentalność jest jeszcze pokomunistyczna i po sowiecka. Wszędzie widzicie porażki i niepowodzenie dlatego to XD. Polecam film Tetris, dokładnie tak myślicie jak ludzie na wschodzie. https://www.filmweb.pl/film/Tetris-2023-876121

0

No tak, wszystkie gry z Windowsa działają na tych nowych procesorach M1, M2, M3 arm od Apple? Sprecyzuj co jest dla ciebie resztą oprogramowania, każde oprogramowanie działające na Windowsach czy na innych systemach też? Nie wystarczy na początku jeden zamiennik przydatnego programu jak OpenOffice, od razu musi być całe to oprogramowanie, które jest dostępne na tych trzech wielkich systemach głównego nurtu? Czy systemy własne od producentów telewizorów LG i Samsunga, mają to całe oprogramowanie? Raczej nie, mają tylko najbardziej przydatne programy!

1

Jak już wrzucasz, to ciekawy kanał jest https://www.youtube.com/@awesomekling (ciekawą ma historie facet)

timor napisał(a):

Więc co to jest w 15 inżynierów oprogramowania stworzyć system operacyjny na jeden procesor arm?

Jak chcesz coś dużego zbudować to musisz to zrobić sam, skąd weźmiesz pieniądze żeby opłacić 15 inżynierów?
Ja sobie teraz klepię jedną nogą projekt w neovim, a drugą piszę sobie co jakiś czas na forum.

Małe projekty są lepsze, bo zrobisz je szybko, duże to musisz mieć już wizję i po prostu klepać nie myśląc czy coś z tego będziesz miał i czy w ogóle coś z tego wyjdzie.
Po prostu codziennie coś poprawiasz dodajesz i tak idziesz do przodu nie potrzeba żadnej motywacji.
Tak duży jak będziesz robił to musisz nauczyć się codziennie coś dodać, nie być prefekcjonistą, a po prostu tworzyć.

Twoje pomysły są jeszcze zbyt ogólne, między wyobraźnią, a logicznym myśleniem musi być równowaga, wtedy łatwo byś odsiał pomysły, które nie mają sensu.

0

Masz pojęcie ile powstało już nowych systemów operacyjnych ogólnego przeznaczenia, które wspierają te wszystkie procesory, karty graficzne, płyty główne, dyski twarde, pamięci ram, karty wifi, karty sieciowe eth0, a tu mowa o jednym urządzeniu z tymi samymi podzespołami. Ile jest wszystkich procesorów na świecie i kart graficznych, a ile rodzajów ma Apple? Przecież to jest ogromna liczba aby to zaprogramować dlatego Microsoft ma do 1000 programistów kernela i też pewnie nie są to sami inżynierowie oprogramowania. https://www.notebookcheck.net/Computer-Games-on-Laptop-Graphi

0

Ja wolę proste rzeczy budować, w dodatku Linuxa tak lubię, że wolę dopisywać nowe sterowniki niż tworzyć nowy system operacyjny. Jak coś ci się podoba to możesz dołączyć do community i pomóc to rozwijać. @timor

3
timor napisał(a):

Sprzętu będzie mało więc napisanie na niego systemu i sterowników powinno zająć mało czasu.

Nie wiem o co chodzi z tymi sterownikami, ale dla mnie takie zdania od razu zapalają czerwoną lampkę. Jak widzę tekst powinno zająć mało czasu, to od razu wizualizuję sobie sytuację 5 lat później i dalej nic nie jest zrobione. Wyjątkiem jest sytuacja, gdzie wiem, że wypowiada to ktoś, kto faktycznie robił takie systemy i sterowniki i wie, co mówi.

Najwięcej czasu zajmie przeglądarka, dodać do niej obsługę wyłącznie najnowszego standardu HTML5.1 i ES6?

To ruchomy cel. Ja jako użytkownik HTML/CSS/JS nie ogarniam tego do końca, a co dopiero programiści silników, którzy muszą znać to od podszewki i implementować rozmaite specyfikacje, a potem ciągle to aktualizować.

Sprawdzi się język bez klamer? Programy pisane w Pythonie są tworzone z szybkością myśli, wiec tu powinno być podobnie

Facepalm. Biorąc pod uwagę, że kilka zdań wcześniej jest Witamy, czy jest możliwe stworzenie laptopa z procesorem arm risc-v oraz napisanie na niego oprogramowania, systemu, sterowników i przeglądarki internetowej?. Myślę, że przy tak ambitnym projekcie, to fakt istnienia klamerek w języku ma znaczenie pomijalne i całkiem przypadkowe (BTW zobacz sobie, jak JavaScript powstawał - nagle ktoś zdecydował, że to ma być kopia Javy, więc wow, są klamerki, bo chcieli z tego Javę zrobić).

0
timor napisał(a):

Witamy, czy jest możliwe stworzenie laptopa z procesorem arm risc-v oraz napisanie na niego oprogramowania, systemu, sterowników i przeglądarki internetowej?
Laptop składany będzie w Chinach, za oprogramowanie będzie odpowiadał zespół 15 osób. Aby to szybko napisać można wybrać język o prostej składni jak Scala 3 Native lub Nim?
Sprzętu będzie mało więc napisanie na niego systemu i sterowników powinno zająć mało czasu. Najwięcej czasu zajmie przeglądarka, dodać do niej obsługę wyłącznie najnowszego standardu HTML5.1 i ES6? Sprawdzi się język bez klamer? Programy pisane w Pythonie są tworzone z szybkością myśli, wiec tu powinno być podobnie. Lenovo już produkuje takie laptopy z procesorem arm Snapdragon.
https://www.lenovo.com/us/en/p/laptops/thinkpad/thinkpadx/thinkpad--x13s-(13-inch-snapdragon)/len101t0019#tech_specs

Oczywiście że jest możliwe ale dużo zależy od szczegółów.

Gdybyś np. chciał "stworzyć" laptopa opartego o x86 - możesz sam w jednej firmie zamówić brandowany (czyli np. ze swoim logo i nazwą) sprzęt - np. clevo montuje na zamówienia innych firm brandowane laptopy: https://en.wikipedia.org/wiki/Clevo

Jeśli chodzi o Risc-V wybór jest ograniczony, ale laptopy po prostu składa się z gotowych kawałków o ile skorzystasz z gotowych sterowników Linux-a a nie będziesz chciał całego stosu pisać od zera.

Sugerowałbym prześledzić jak powstał ChromeOS - w oparciu o istniejący hardware ARM, istniejący kernel & sterowniki linuxa oraz istniejącą przeglądarkę chrome. Po prostu poskładali razem klocki, upewnili się że pasują i zaczęli sprzedawać .

To samo dotyczy różnych dystrybucji linuxa - nikt nie pisze całej dystrybucji od zera, tylko bierze gotowe aplikacje, dodaje ewentualnie swój instalator, tapety i konfiguracje i wypuszcza "distro"

Zatem jeżeli mocno ograniczysz się w rozmachu tworzenia nowych aplikacji, skorzystasz z 98% istniejących dodając 2% swoich to masz szanse na sukces

0

Witamy, czy jest możliwe stworzenie laptopa z procesorem arm risc-v oraz napisanie na niego oprogramowania, systemu, sterowników [...] za oprogramowanie będzie odpowiadał zespół 15 osób

Chcesz sam pisać sterowniki? Do wszystkiego co jest na rynku? W piętnaście osób? Chociaż w sumie nie masz wyboru bo nie widzę w jaki sposób mógłbyś przekonać producentów sprzętu by przejmowali się Twoją platformą.

młody chłopak przed studiami, napisał w całości dość rozszerzony silnik gier na poziomie Unreal Engine 5, Unity czy RAGE

Nope, flax nie jest na poziomie żadnego z wymienionych, szczególnie UE5 czy RAGE. Silnik jest tak dobry jak gra (nie demo) stworzona z jego użyciem, i tutaj stary dobry ogre3d jest jak na razie bardziej wiarygodny niż flax.

0
timor napisał(a):

Laptop składany będzie w Chinach, za oprogramowanie będzie odpowiadał zespół 15 osób

Dasz radę, w końcu pierwsze Apple też powstało w garażu. Ale żeby się udało musisz zrobić najpierw jakieś PoC czy to w ogóle jest viable. Np. wybierz sobie coś z tego.

2

Wiadomo to troll ale co to jest arm risc-v? Arm znam, risc-v tez ale ze razem ?

0
revcorey napisał(a):

Wiadomo to troll ale co to jest arm risc-v? Arm znam, risc-v tez ale ze razem ?

Architektura hybrydowa?

1 użytkowników online, w tym zalogowanych: 0, gości: 1