eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › typologia errorow aplikacji
Ilość wypowiedzi w tym wątku: 88

  • 61. Data: 2011-05-06 09:44:57
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: Andrzej Jarzabek <a...@g...com>

    On May 6, 5:39 am, "Wojciech \"Spook\" Sura"
    <wojciech.sura_no@spam_poczta.medi.com.pl> wrote:
    > Dnia 03-05-2011 o 01:14:36 Andrzej Jarzabek <a...@g...com>  
    > napisał(a):
    >
    > > On 02/05/2011 22:06, f...@W...gazeta.pl wrote:
    > >> czyli w skrocie ->  ZAPCHANIE sobie tablicy (przez bledy w poodznaczaniu
    > >> flag) to nie WYCIEKI
    >
    > > To są wycieki.
    >
    > Kwestia definicji. Program nadal może dostać się do "zapchanych" elementów  
    > tablicy jawnie ją indeksując.

    Co to znaczy "program może"? Jeśli z algorytmu programu wynika, że
    nigdy się do tego elementu nie dostanie, to przecież nie może. Jeśli
    zmienimy mu kod to owszem, będzie mógł, ale to samo dotyczy dowolnego
    programu z wyciekami: odpowiednio zmieniając kod można doprowadzić do
    tego, że wycieków nie będzie.

    > Ba, można banalnie łatwo napisać odśmiecacz,  
    > który z powrotem odzyska nieużywane rekordy.

    Nie można, jeśli nie jesteś w stanie określić, które rekordy są w
    danym momencie używane.

    Poza tym fakt, że można napisać odśmiecacz nie znaczy, że program
    _bez_ tego odśmiecacza nie ma wycieków.

    Poza tym weź pod uwagę, że struktury sterty, z których korzystają
    malloc i free też raczej trzymają (a przynajmniej mogą trzymać)
    namiary na każdy z bloków zaalokowanych przez malloc, niezależnie od
    tego, czy kliencki kod otrzymane uchwyty (wskaźniki) jeszcze gdzieś
    trzyma, czy nie. Dla klienckiego kodu te struktury są rzecz jasna
    niedostępne, ale kod funkcji malloc czy free może z powodzeniem czytać
    i modyfikować te struktury, które odpowiadają "wyciekniętej" pamięci.
    A przecież kod biblioteki i jej struktury danych stają się częścią
    programu po zlinkowaniu.

    > Tylko że Firowi _cały czas chodzi o fizyczne wycieki_, a nie o logiczne,

    Fizyczne wycieki to możesz mieć najwyżej w komputerze chłodzonym
    wodą. :)
     
    > związane z konstrukcją programu. Tobie zaś chodzi o logiczne (w których  
    > zawierają się fizyczne) i dlatego obaj kłócicie się bezproduktywnie.

    Och, jeśli zdefiniujesz "fizyczne wycieki" jako "wycieki spowodowane
    przez użycie malloc", to naturalnie takich wycieków nie ma w
    programie, który nie używa malloc. Mogą być w nim wycieki w sensie
    wycieki tak w ogóle, w którym to sensie zawierają się oczywiście
    również wycieki spowodowane użyciem malloc.

    Dwa pytania: wiedząc, jak dana implementacja biblioteki libc
    implementuje stertę, w zależności od interpretacji możliwe może być
    dostanie się do dowolnych wcześniej zaalokowanych przez malloc bloków,
    w sposób nieprzenośny (generalnie czytając metadane np. zajmujące ileś-
    tam bajtów przed otrzymanym z malloc wskaźnikiem). Czy sam fakt, że
    jest to możliwe dla jakiejś implementacji malloc powoduje, że dowolny
    program (również taki nie korzystający z tej możliwości) używający tej
    implementacji malloc nie ma wycieków?

    Drugie pytanie: załóżmy, że zrobię sobie bibliotekę libmyalloc, która
    udostępnia funkcje my_alloc() i my_free(). Ich specyfikacja jest taka
    sama jak malloc i free, tylko że zawierają własną implementację
    sterty, która - tak się składa - przechowuje w swoich strukturach
    każdy blok zaalokowany przez malloc. Jeśli więc zechcę, mogę sobie
    napisać w libmyalloc funkcję, która iteruje sobie po wszystkich
    zaalokowanych blokach. Mógłbym też udostępnić klientowi funkcje
    my_first_allocated_block() i my_next_allocated_block() pozwalające
    klienckiemu kodowi przespacerować się po wszystkich zaalokowanych
    blokach - ale chwolowo załóżmy, że tego ne robię.

    Więc w kolejności: jeśli napiszę program korzystający z libmyalloc,
    który w pewnym momencie wykonuje gdzieś my_alloc i nigdy dla tych
    zaalokowanych bloków nie robi my_free, co z czasem prowadzi do
    zapchania sterty zarządzanej przez libmyalloc, to jest wyciek, czy nie
    ma wycieku?

    A jeśli dodam _przy tym samym programie klienckim_ do biblioteki
    libmyalloc funkcje my_first_allocated_block() i
    my_next_allocated_block(), to coś się zmieni? Zauważ, że kod kliencki
    oczywiście z tych funkcji nigdy nie korzysta, bo przeciez przed chwilą
    ten sam kod linkował się z biblioteką bez tych funkcji. Są wycieki,
    czy ich nie ma?


  • 62. Data: 2011-05-06 09:57:23
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: Andrzej Jarzabek <a...@g...com>

    On May 6, 9:52 am, p...@p...onet.pl wrote:
    > > tu wogole nie ma pojecia zwalniania - leak dotyczy _utracen referencji_
    >
    > defakto nie wiem czy przypadkiem cos takiego
    >
    > f()
    > {
    >   char* txt ="yellow girls are running backwards";
    >
    > }
    >
    > nie spalnia definicji leaka -  bo ref jest tracona a dane, o ile
    > wiem, zostaja raczej na stercie (bezuzyteczne), niz sa zwijane ze stosu

    Kluczowy zwrot tutaj: "o ile wiem".
    Ogólnie jednak masz rację: "defakto" nie wiesz.


  • 63. Data: 2011-05-06 10:09:20
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: Andrzej Jarzabek <a...@g...com>

    On May 6, 10:01 am, p...@p...onet.pl wrote:
    > > On Tue, 03 May 2011 08:59:52 +0200, Paweł Kierski<n...@p...net>
    > > wrote:
    >
    > > Można też zauważyć, że jeśli przydziela się w programie elementy ze
    > > statycznej tablicy, to taki element można traktować jak zasób, a
    > > indeks jako uchwyt. Zresztą przecież te wszystkie systemowe uchwyty i
    > > deskryptory to zwykle są indeksy w jakichś systemowych tablicach.
    >
    > mozna ale nie trzeba i ja tak nie robie - wogole mam raczej na pienku z
    > uchwytami

    W swoim "statycznym C" nie przechowujesz nigdzie indeksów na elementy
    w tych statycznych tablicach?

    W ogóle to przecież może być nawet tak, że piszesz tylko programy
    wypisujące "Hello World", "Ahoj przygodo" i tysiące tego typu
    programów, wypisujące tysiące różnych komunikatów. W takiej sytuacji
    mógłbyś nawet twierdzić, że piszesz w C bez pętli i instrukcji
    warunkowych, co zapewnia, że twoje programy nie zapętlają się i zawsze
    zachowują się w przewidywalny sposób. I że bez tych rzeczy można nadal
    napisać ogromną ilość programów i że w programach, które piszesz,
    pętle i instrukcje warunkowe nie są ci prawie nigdy potrzebne. I nawet
    może miałbyś w tym wszystkim rację, ale co z tego?


  • 64. Data: 2011-05-06 12:42:38
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: Michal Kleczek <k...@g...com>

    fir wrote:

    >> tworzenia stu instancji ktore pozniej moga spokojnie hulac
    >
    > wogole to nie chcialem sie wdawac w takie dlugie wyjasnienia, chcialem
    > tylko owiedziec (a nawet wcale nie chcialem tego pwiedzec) tylko zauwazyc
    > ze tak jest:
    >
    > w statycznym c NAPRAWDE nie ma takiego pojecia i problemu
    > jak leaki (jest to pojecie absolutnie nieznane)
    >
    > jak ktos nie wierzy to mz jego problem
    >

    Znacznie powazniejszy problem ma ktos, kto wierzy, ze jak nie uzywa
    malloc/free to nie ma leakow.
    MSPANC

    --
    Michal


  • 65. Data: 2011-05-06 13:35:33
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: "kenobi" <p...@p...onet.pl>

    > On May 6, 9:52 am, p...@p...onet.pl wrote:

    > > > tu wogole nie ma pojecia zwalniania - leak dotyczy _utracen referencji_

    > >

    > > defakto nie wiem czy przypadkiem cos takiego

    > >

    > > f()

    > > {

    > >   char* txt ="yellow girls are running backwards";

    > >

    > > }

    > >

    > > nie spalnia definicji leaka -  bo ref jest tracona a dane, o ile

    > > wiem, zostaja raczej na stercie (bezuzyteczne), niz sa zwijane ze stosu

    >

    > Kluczowy zwrot tutaj: "o ile wiem".

    > Ogólnie jednak masz rację: "defakto" nie wiesz.

    wiem natomiast cos innego, to jaka klase umyslowosci
    charakteryzuja podobne wypowiedzi, (wnioski dla mnie:
    'get low')



    --
    Wysłano z serwisu OnetNiusy: http://niusy.onet.pl


  • 66. Data: 2011-05-06 14:36:09
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: Andrzej Jarzabek <a...@g...com>

    On May 6, 2:35 pm, "kenobi" <p...@p...onet.pl> wrote:
    > > On May 6, 9:52 am, p...@p...onet.pl wrote:
    >
    > > Kluczowy zwrot tutaj: "o ile wiem".
    > > Ogólnie jednak masz rację: "defakto" nie wiesz.
    >
    > wiem natomiast cos innego, to jaka klase umyslowosci
    > charakteryzuja podobne wypowiedzi, (wnioski dla mnie:
    > 'get low')

    Też ci się tylko wydaje, że wiesz.


  • 67. Data: 2011-05-06 16:02:36
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: "fir" <p...@p...onet.pl>



    > > > Kluczowy zwrot tutaj: "o ile wiem".
    > > > Ogólnie jednak masz rację: "defakto" nie wiesz.
    > >
    > > wiem natomiast cos innego, to jaka klase umyslowosci
    > > charakteryzuja podobne wypowiedzi, (wnioski dla mnie:
    > > 'get low')
    >
    > Też ci się tylko wydaje, że wiesz.

    Wiem co widze - ciagle to samo promyk swiatla sie nie przetarl:
    kolajna replika w ktorej z uparem maniaka probujesz sprowadzic
    rozmowe ponizej poziomu osla - na charakterystyczny dla siebie
    poziom < do tego wyczuwalna jest powaga sub-osla ktory blysnal
    sobie we wlasnych oczach > a w mojej ocenie mentalne pokractwo
    i niedorozwoj < ma to zreszta szereg ciekawych reperkusji np
    komediowych - skojarzylo mi sie z filmami z brucem lee 'Wejscie Osła'
    'Droga Osła' itd>

    Zamiast tak uparcie oslic moglbys zrobic jedna rzecz - w tym watku
    w ktorym pisales ze 'profesorowi' chyba wydaje sie ze robi sie to tak
    zaprezentuj jak to sie powinno robic - jakies reguly przyzwoitej dyskusji
    musza byc - moze sie na cos przydasz - can you do it? no?







    --
    Wysłano z serwisu OnetNiusy: http://niusy.onet.pl


  • 68. Data: 2011-05-06 18:40:56
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: "kenobi" <g...@p...onet.pl>

    > > > > Kluczowy zwrot tutaj: "o ile wiem".
    > > > > Ogólnie jednak masz rację: "defakto" nie wiesz.
    > > >
    > > > wiem natomiast cos innego, to jaka klase umyslowosci
    > > > charakteryzuja podobne wypowiedzi, (wnioski dla mnie:
    > > > 'get low')

    generalnie, poniewaz jak wspomnialem owlalbym by mowic mi per 'generale'
    niz per 'profesorze' to postanowilem sprobowac nowego adresu - zobacze czy moze
    sie sprawdzi; wogole troche za duzo watkow poruszalem ostatnio (wiecej niz
    moge poswiecic czasu by sie na nich skupic (ale np watek bulletstorm'a czy ten
    wywiad z karmakiem ciekawe jak cholera), generalnie mam cos co nazywam 'top
    crisis' troche odwsiąklem od niskiego niskopoziomewego myslenia ale zakladam ze
    dam rade

    kenobi


    --
    Wysłano z serwisu OnetNiusy: http://niusy.onet.pl


  • 69. Data: 2011-05-06 19:35:15
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: "fir" <p...@p...onet.pl>

    > > > > > Kluczowy zwrot tutaj: "o ile wiem".
    > > > > > Ogólnie jednak masz rację: "defakto" nie wiesz.
    > > > >
    > > > > wiem natomiast cos innego, to jaka klase umyslowosci
    > > > > charakteryzuja podobne wypowiedzi, (wnioski dla mnie:
    > > > > 'get low')
    >
    > generalnie, poniewaz jak wspomnialem owlalbym by mowic mi per 'generale'
    > niz per 'profesorze' to postanowilem sprobowac nowego adresu - zobacze czy moze
    > sie sprawdzi; wogole troche za duzo watkow poruszalem ostatnio (wiecej niz
    > moge poswiecic czasu by sie na nich skupic (ale np watek bulletstorm'a czy ten
    > wywiad z karmakiem ciekawe jak cholera), generalnie mam cos co nazywam 'top
    > crisis' troche odwsiąklem od niskiego niskopoziomewego myslenia ale zakladam ze
    > dam rade
    >
    > kenobi

    dasz rade, generale...


    --
    Wysłano z serwisu OnetNiusy: http://niusy.onet.pl


  • 70. Data: 2011-05-06 19:45:37
    Temat: Re: typologia errorow aplikacji (a jeszcze leipaj i realoki)
    Od: "fir" <p...@p...onet.pl>

    > >
    > > generalnie, poniewaz jak wspomnialem owlalbym by mowic mi per 'generale'
    > > niz per 'profesorze' to postanowilem sprobowac nowego adresu - zobacze czy moze
    > > sie sprawdzi; wogole troche za duzo watkow poruszalem ostatnio (wiecej niz
    > > moge poswiecic czasu by sie na nich skupic (ale np watek bulletstorm'a czy ten
    > > wywiad z karmakiem ciekawe jak cholera), generalnie mam cos co nazywam 'top
    > > crisis' troche odwsiąklem od niskiego niskopoziomewego myslenia ale zakladam ze
    > > dam rade
    > >
    > > kenobi
    >
    > dasz rade, generale...
    >

    Dzieki ze mnie pocieszasz prof, ale sam wiesz ze nie jest i
    nie bedzie az tak dobrze...

    (sorki za zarcik, ale chcialem sie odciac od mulistego subdonkeyingu, ktory w
    pewnym momencie tak mnie rozsmieszyl ze normalnie padam z wyczerpania
    po napadzie smiechu - dobrze ze nie wyrabalem na serce)



    --
    Wysłano z serwisu OnetNiusy: http://niusy.onet.pl

strony : 1 ... 6 . [ 7 ] . 8 . 9


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: