сряда, октомври 29, 2008

За Apple, Steve Jobs и Open Source-а


Напоследък чета доста за историята на Apple, Mac и т.н. и се оказва, че Аpple, Steve Jobs и Open Source са доста силно свързани понятия. Не вярвате? Ей сега ще ви разкажа. :)
Всичко започва през 1985г., когато Steve Jobs e изгонен / напуска Apple. Сещате се, че да те изгонят от компанията, която си създал не е едно от най-приятните неща, които могат да ти се случат. Стив Джобс обаче успява да направи нещо, за което не само аз, но и много други хора му се възхищават. За няколко седмици събира хора (част от които бивши служители в Apple) и създава NeXT. На 12 октомври 1988г пускат първият NeXT компютър с операционната система nextstep 0.8. Именно с nextstep започва „връзката“ между Jobs и софтуера с отворен код.
Ядрото на nextstep e базирано на Mach 2.5 и части от BSD 4.3 (process model, network stack, virtual file system). Mach e ядро разработено от Carnegie Mellon Univercity в Питсбърг с идеята да замести BSD ядрото в unix-like операционните системи. Интересното е, че управлението на виртуална памет, използвано в Mach 3, е възприето от BSD разработчиците и дори в момента се използва в FreeBSD.
Но да се върнем на NextStep. Операционната система се развива доста добре, през `92г. NextStep 2.0 вече поддържа цветни монитори, cd-rom, spell check и още какво ли не. През `94-та NeXT сключват споразумение със Sun и стандартизират OpenStep. Започват различни имплементации на *STEP операционната система, между които е и GNU-Step, която съществува и до днес. Мисля, че няма нужда да споменавам, че отново става въпрос за проект с отворен код.
Аpple се мъчат да се борят с Windows 95, но неуспешно. По ирония на съдбата, те купуват NeXT за да могат да продължат борбата с Microsoft и Steve Jobs се завръща начело на Apple с обещанието, че до `99-та ще пуснат Mac OS X. Започва работа по Rhapsody, която е всъщност наследник на NextStep и съответно онаследява XNU ядрото с отворен код. По график `99-та излиза Mac OS X 1.0 за сървъри, а заедно с него излиза и Darwin ядрото с отворен код. Това ядро и до момента излиза с отворен код успоредно с всяка версия на Mac OS X, като в момента Darwin 9.5 e съответствие на посления Mac 10.5.5.
Mac OS X e на база Mach 3 ядрото и FreeBSD 5 и е POSIX съвместима ОС. Съдържа в default-ната си инсталация много приложениея с отвоен код като vim, nano, emacs, bash, gcc, make, autoconf, apache, myslq, php и т.н., които сме свикнали да виждаме в съвремените UNIX деривати като Linux и BSD. Дори основните браузър на Apple e базиран на WebKit(KHTML), който също е с отворен код. Освeн това Apple се „грижат “ стабилно за samba. Абе .. готини са.

.
*Не гарантирам за истинността на на тази статия. Фактите в нея са събрани от Wikipedia и различни други източници в интернет, които са прекалено много за да ги запомня или изброя всичките.

6 коментара:

Анонимен каза...

Хех, UNIX не е равно на отворен код ;) Дори Майкрософт са имали Unix дистрибуция -- Xenix ;)

Анонимен каза...

Всъщност, може би заглавието трябва да е Стив Джобс и Unix, а не точно отворения код ;) Стив Джобс вижда в Unix удобна основа, върху която да развие бизнеса с работни станции, където NeXT фокусира усилията си. Хронологически погледнато, GNU проекта започва в началото на 80-те, 1983, и е нещо като реакция срещу AT&T, което от края на 70-те започват да налагат рестриктивни лицензи за разпространението на Unix. Има и други доводи, които са валидни и до днес за затфорения софтуер. По-късно, през 1986, се основава Free Software Foundation, а през 1989 се публикува първата версия на GPL. Използвайки този лиценз, през 1991 се появява Линукс, а през 1993 Дебиан и ... FreeBSD и NetBSD ;) Това са първите наистина "свободни" 386BSD базирани операционни системи. Заради това, поне аз, смятам че е малко пресилено да се говори за отворен код в NeXTSTEP ;)

gotha каза...

Донякъде съм съгласен.
Не успях да намеря информация под какъв лиценз е реализирано XNU ядрото в началото, но в момента е под Apple Public Source License, който е одобрен от FSF като "free software and open source license". За това приемам, че и преди е бил под някакъв подобен лиценз (без да съм сигурен в това).
Щом можеш да си изтеглиш сорса на ядрото - http://kernel.macosforge.org/ значи е open source :)

Доколкото съм запознат с BSD лиценза, нищо не те спира да си затвориш кода и да продължиш да си разработваш приложението, но реално погледнато никой няма полза от това. Оставяйки го open source можеш да продължиш да се възползваш от user contributed кода. Кой не иска някой друг да се грижи за грешките в неговия продукт :)
Точно тук Apple много умело успяват да се възползват от това без да "отварят" цялата операционна система. За това и всичките им API-та и глезотиики са си затворени.

Не трябваше да издаваш за Xenix, мислех да пиша за MS и отворения код отделно :P

gotha каза...

Донякъде съм съгласен.
Не успях да намеря информация под какъв лиценз е реализирано XNU ядрото в началото, но в момента е под Apple Public Source License, който е одобрен от FSF като "free software and open source license". За това приемам, че и преди е бил под някакъв подобен лиценз (без да съм сигурен в това).
Щом можеш да си изтеглиш сорса на ядрото - http://kernel.macosforge.org/ значи е open source :)

Доколкото съм запознат с BSD лиценза, нищо не те спира да си затвориш кода и да продължиш да си разработваш приложението, но реално погледнато никой няма полза от това. Оставяйки го open source можеш да продължиш да се възползваш от user contributed кода. Кой не иска някой друг да се грижи за грешките в неговия продукт :)
Точно тук Apple много умело успяват да се възползват от това без да "отварят" цялата операционна система. За това и всичките им API-та и глезотиики са си затворени.

Не трябваше да издаваш за Xenix, мислех да пиша за MS, UNIX и отворения код отделно :P

gotha каза...

Ей, blogger е голямо лайно, не мога да редактирам коментари, а сега се е бъгнала и функцията за триене.
Да се чете втория ми коментар!

Баси простотията! Кога ли най-после ще им тегля една майна !

silvernasko каза...

Да не искаш да кажеш че google предоставят бъгава услуга:)