Re: Jádro pudla (Cernobily svet) :-)

Ales Prochaska prochaska@alsoft.cz
Sobota Březen 4 10:51:43 CET 2006


Bohuzel, nevidim. Moc jsem se snazil k tomu pristupovat pozitivne ale
nic praktickeho jsem v tom nenasel. Muzes snad uvest priklad?

Ales Prochaska

> Ja bych dodal, ze to vidim jako funkcnost ciste praktickou. Pochazim z
> Pascalu a na C (ktere jsem ze zacatku fakt nemel rad) jsem si snadno zvyknul
> prave diky konstrukci s pointery a poli. Plus samozrejme vsechny blbinky, co
> jsi uvedl :)

> Kdyz na to koukas z hlediska cloveka, ktery C pouziva na mikroprocesorech,
> uvidis takove C-ckove vyhody velmi snadno.

> --
> S pozdravem/with best regards

>     Ing. Tomáš Dresler

> mailto:edison@hw.cz
> http://edisonovo.info

>> -----Original Message-----
>> From: hw-list-bounces@list.hw.cz 
>> [mailto:hw-list-bounces@list.hw.cz] On Behalf Of Ales Prochaska
>> Sent: Saturday, March 04, 2006 10:42 AM
>> To: hw-list@list.hw.cz
>> Subject: Re: Jádro pudla (Cernobily svet) :-)
>> 
>> 
>> Je napsanej v příšeným C. Já to zkusím vysvětlit, ale prosím 
>> nebijte mě, jestli z toho bude nějaký flame.
>> 
>> C si historicky nese už od svého vzniku jeden podstatný 
>> problém, totiž že nemělo pole. V manuálu se sice psalo, že 
>> pole má ale není to tak - mělo jen několik syntaktických 
>> featur jak neexistenci pole obejít (mluvím hlavně o 
>> pointerové aritmetice (pak jsou tam ještě nějaké nepodstatné 
>> drobnosti jako že index pole v závorkách je vlastně 
>> ekvivalentní dereferenci pointeru s přičteným indexem)). 
>> Milovníci C povýšili význam pointer = pole na základní pravdu 
>> a stavební kámen vesmíru a tato původně dočasná záplata (sami 
>> Kernihgan s Ritchiem psali, že v příští verzi C tento 
>> nedostatek odstraní) se dodnes táhne celým vývojem jazyků 
>> typu C a různými návaznostmi způsobuje problémy kde může. 
>> Přitom její odstranění by nezpůsobilo žádné podstatné 
>> problémy kromě nevole milovníků kryptických kódů.
>> 
>> Pak mám v C spadeno ještě na několik blbinek (typu 
>> postinkrement, operátor čárka, princip že přiřazovací výraz 
>> má hodnotu apod.), ale výše uvedené je to nejdůležitější.
>> 
>> Aleš Procháska
>> 
>> > 4.3.2006, 10:08:46
>> 
>> > Dobry den
>> > "som z toho aksi zmeteny"
>> 
>> > Nechci vyvolavat zadny flame, berte tohle prosim jako 
>> stupidni dotaz 
>> > nepouceneho laika, ale neni nahodou ten super bezpecny 
>> Linux/Unix taky 
>> > napsanej v tom prisernym C ? Muzete mi to prosim nejak jednoduse a 
>> > polopaticky vysvetlit ?
>> 
>> > S pozdravem Pavel
>> >   mailto:gatilo@centrum.cz
>> 
>> > --
>> > Ales Prochaska napsal:
>> 
>> >> Jenže překladač lze napsat tak, aby systémy ochrany paměti 
>> využíval. 
>> >> Stačilo by aby se někdo zamyslel hlavou a udělal dejme tomu 
>> >> překladač, který bude možné přepnout do nějakého módu "safe C++" 
>> >> (když už teda né tu Adu nebo nějaký lepší jazyk), což bude céčko s 
>> >> nepatrně pozměněnou syntaxí, beztak převážně v místech do kterých 
>> >> rozumně uvažující programátor raději nikdy nezabloudí :-)
>> 
>> >> Aleš Procháska
>> 
>> >>> Jak to funguje doopravdy:
>> 
>> >>> Základem je tzv. flat model, kdy segment programu, dat i 
>> zásobníku 
>> >>> se překrývají po celé délce. Program sice nemůže k cizím 
>> datům, ale 
>> >>> sám sebe přepsat může a může taky jakákoli svá data spustit jako 
>> >>> program...
>> 
>> >>> Co to má společného s ANSI C?
>> 
>> >>> Pointery neobsahují segmentovou část adresy, takže C lze používat 
>> >>> jen s flat modelem. Zásobník nelze smysluplně limitovat, protože 
>> >>> má-li být limit nad 2 GB (opakuji, limit zásobníku určuje 
>> nejnižší 
>> >>> povolenou adresu), budou pointery do něj odkazující záporné:-)
>> 
>> >>> A co XP a SP2?
>> 
>> >>> To je tak trochu "narovnák na vohejbák" - při spuštění 
>> programu se 
>> >>> zásobník inicializuje pokaždé na trochu jinou adresu, 
>> takže nemůže 
>> >>> přetéct předem definovatelným způsobem:-)
>> 
>> >>> Uf... tak pro dnešek mám dost:-)
>> 
>> >>> PH
>> 
>> 
>> 
>> 
>> >> _______________________________________________
>> >> HW-list mailing list  -  sponsored by www.HW.cz Hw-list@list.hw.cz
>> >> http://list.hw.cz/mailman/listinfo/hw-list
>> 
>> 
>> 
>> >> --
>> 
>> >> Checked by AVG Free Edition.
>> >> Version: 7.1.375 / Virus Database: 268.1.2/274 - Release Date: 
>> >> 3.3.2006
>> 
>> >  
>> 
>> > _______________________________________________
>> > HW-list mailing list  -  sponsored by www.HW.cz Hw-list@list.hw.cz
>> > http://list.hw.cz/mailman/listinfo/hw-list
>> 
>> 
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz 
>> Hw-list@list.hw.cz http://list.hw.cz/mailman/listinfo/hw-list
>> 

> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list





Další informace o konferenci Hw-list