eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaCzas na Windows 10 › Re: Czas na Windows 10
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
    OSTED!not-for-mail
    From: Sebastian Biały <h...@p...onet.pl>
    Newsgroups: pl.misc.elektronika
    Subject: Re: Czas na Windows 10
    Date: Fri, 27 Jan 2017 21:21:18 +0100
    Organization: ATMAN - ATM S.A.
    Lines: 53
    Message-ID: <o6ga44$alt$1@node2.news.atman.pl>
    References: <1...@4...net>
    <a...@n...neostrada.pl>
    <o633fo$nt8$1@node1.news.atman.pl>
    <a...@n...neostrada.pl>
    <o636ld$kch$1@node2.news.atman.pl>
    <a...@n...neostrada.pl>
    <o65eru$3sk$1@node1.news.atman.pl>
    <a...@n...v.pl>
    <o65iil$7iq$1@node1.news.atman.pl>
    <a...@n...v.pl>
    <o683l1$dsn$1@node2.news.atman.pl>
    <a...@n...neostrada.pl>
    <o68dlc$470$1@node1.news.atman.pl>
    <a...@n...v.pl>
    <o6art4$3r7$2@node2.news.atman.pl>
    <a...@n...v.pl>
    <o6df52$kdf$1@node2.news.atman.pl>
    <a...@n...v.pl>
    <o6ep2i$h7h$1@node1.news.atman.pl>
    <a...@n...v.pl>
    NNTP-Posting-Host: 176.115.85.233
    Mime-Version: 1.0
    Content-Type: text/plain; charset=utf-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: node2.news.atman.pl 1485548485 10941 176.115.85.233 (27 Jan 2017 20:21:25
    GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Fri, 27 Jan 2017 20:21:25 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:45.0) Gecko/20100101
    Thunderbird/45.6.0
    In-Reply-To: <a...@n...v.pl>
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:712055
    [ ukryj nagłówki ]

    On 2017-01-27 18:26, slawek wrote:
    >> Więc może wyjaśnijmy: null pointer dereference *zazwyczaj* kończy
    > się
    >> sygnałem zabijającym aplikację
    > A konkretnie w jakim języku? W jakim programie?

    C++ w programie na linuxa.

    > Od około 20 lat powszechnie używa się mechanizmów takich jak obsługa
    > wyjątków.

    To jest wyjatek systemowy lub sprzetowy, nie języka. Można go przejąc
    tylko co zrobisz dalej? Program zrobil dereferencję nulla. Cala reszta
    algorytmu nie ma sensu. Masz śmiecia zamiast danej.

    > Jakiś tam null pointer (użyty do czegoś, bo nie użyty to
    > zupełnie nieszkodliwe jest)

    *dereferencja* jest użyciem. Powoduje odczyt z adresu 0. Generuje to
    wyjątek na poziomie sprzętowym jeśli CPU to wspiera (a wspiera każdy
    współaczesny z MMU czyliz grubsza również każdy Linux, Windows, Android,
    Solaris itd).

    >, czy dzielenie przez zero itd itp. wcale nie
    > muszą (i nie kończą się) "zabijaniem aplikacji".

    Oczywiście że się kończą. Aby to sprawdzić możesz poświęcić 4 minuty.

    > Oczywiście możesz
    > sprawdzać co instrukcję if ( ptr != NULL ) etc., ale po co?

    Interesujące teorie przed nami otwierasz. Po co sprawdzać nullowośc
    wskaźnika? Bo ja wiem, żeby nie zakończyć bus errorem albo SIGSEGV?

    Czyli w/g Ciebie zrobienie:

    char *a = 0;
    chat x = *a;

    Powinno zakończyć się czymś niegroźnym :) ? Faktycznie, istnieją
    architekury na których tak można, ba nawet istnieje sensowna pamięć pod
    adresem 0. Ale tutaj mowa o linuxie. Tam kończy się to sygnałem. Z
    premedytacją zastawiona pułapka na niedzielnych programistów.

    Może zanim zaczniesz opowiadać bzdury ktore ktoś przeczyta, sprawdź:

    https://pl.wikipedia.org/wiki/Naruszenie_ochrony_pam
    i%C4%99ci#Odwo.C5.82anie_do_zerowego_adresu_pami.C4.
    99ci

    > Seba, ja wiem że tobie się wydaje że umiesz programować.

    Mi się nie tylko wydaje. Nie brnij dalej. Szkoda się kompromitować
    publicznie.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

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: