2011-07-14 18 views
7

Słyszałem mono do tworzenia aplikacji .Net wieloplatformowym ale dlaczego sama .Net Framework to kompilacja warunkowa, na przykładKiedy działa .Net w systemie UNIX?

#if PLATFORM_UNIX 
... 
#endif // PLATFORM_UNIX 

jak widać w .NET Framework źródłem odniesienia dla systemu. IO.Path

+0

Dobra myśl o przyszłości? –

+0

Być może Microsoft w pewnym momencie rozważał port unixowy, ale nigdy go nie ukończył? Jest to coś, co prawdopodobnie nikt nie pod NDA nie może definitywnie odpowiedzieć ... – bdonlan

Odpowiedz

5

to jest dla SSCLI, który wykorzystuje wiele z tej samej bazie kodu i można uruchomić w systemie UNIX

+0

Dzięki, "Microsoft udostępnia CLI ze Wspólnego Źródła jako referencyjną implementację CLI odpowiednią do celów edukacyjnych" Nie wiedziałem, że to jest "Źródło Odniesienia". – Grokodile

+0

@panamack: Identyfikator SSCLI i .Net to dwie różne rzeczy. – SLaks

+0

ah ok, podskoczyłem z pistoletu. – Grokodile

5

Idę wziąć dzikie przypuszczenie i iść z tym, co widzisz to relikty z wirnikiem wdrożenie FreeBSD .NET z powrotem w ciągu dnia.

Rotor IIRC był w jakiś sposób powiązany z wysiłkiem konwersji Hotmail, gdy MS kupił tę firmę.

+0

od SLKS link "Wspólne źródło wspólnej infrastruktury językowej (SSCLI), poprzednio o nazwie kodowej Rotor", więc +1 dobra pamięć :) – Grokodile

0

Z kodu źródłowego SSCLI możemy dowiedzieć się, że CLR jest bardzo łatwy w obsłudze innych platform, jeśli MS chce.