[so] [SO][Tema3][Linux] Folosire semnale pentru SIGSEGV

Paul Olaru olarupaulstelian97 at gmail.com
Mon Apr 15 12:47:31 EEST 2019


Comportament ciudat: mă gândeam la situația în care libc și-ar reinițializa
heap-ul după ce am dat so_exec_start și astfel bufferele din
printf/fprintf/... nu mai sunt partajate cu programul, nu mai sunt
flushuite corespunzător etc. Nu sunt sigur că se comportă așa sau nu, eu
voi merge pe presupunerea asta și mă voi rezuma la a folosi doar apeluri de
sistem pentru implementare.

Cheaty: La tema anterioară nu puteam folosi fprintf pt a implementa
so_fprintf -- asta ar fi fost cheaty. La SD, nu puteam folosi std::map
pentru a implementa ceva echivalent lui.


On Mon, Apr 15, 2019, 12:43 PM Mihai Barbulescu <b12mihai at gmail.com> wrote:

> Salut,
>
> Iar am probleme cu vocabularul vostru si devin din nou confuz. Ce e aia:
> - functie libc care se comporta ciudat? -> defineste conceptul
> "comportament ciudat" ca sa imi calibrez limbajul pe frecventa ta ->
> da-mi si exmplele la care te gandesti, eu unul nu am in minte nici o
> functie __standard__ care se comporta ciudat. Daca exista asa ceva a
> fost marcata ca deprecated si inlocuita!
> - implementare in mod cheaty -> ce-i aia mod cheaty, defineste-mi?
> Da-mi exemplu de functie care face asta
>
> In standarde precum libc nu se pun functii "periculoase" sau "cheaty"
> sau whatever le numiti voi. Se pun functii care au trecut de un amplu
> proces de review si validare. Singurul lucru de care trebuie tinut
> cont e daca functiile sunt sau nu thread safe atunci cand programati
> multithreaded...ATAT. Daca se comporta ca mai sus => se ridica bug cu
> severitate mare la libc...
>
> Va rog sa va luati un moment de a revizui textul scris ca sa putem
> vorbi pe aceeasi frecventa si sa fim sincronizati.
>
> On Mon, 15 Apr 2019 at 12:27, Paul Olaru <olarupaulstelian97 at gmail.com>
> wrote:
> >
> > Pe scurt, dacă e o funcționalitate oferită de sistemul de operare e ok
> și putem folosi ce ne oferă acesta fără restricții, și tot ce e de evitat e
> doar folosirea funcțiilor din libc care ori s-ar comporta ciudat ori ar
> implementa într-un mod cheaty funcționalitatea dorită? (Notă, la tema asta
> nu cred că e nimic în a doua categorie dar ar putea fi câteva în prima)
> >
> > On Mon, Apr 15, 2019, 12:24 PM Mihai Barbulescu via so <
> so at cursuri.cs.pub.ro> wrote:
> >>
> >> Buna Alice,
> >>
> >> Si eu sunt confuz din doua motive:
> >> 1. Formularea ta: alea nu sunt semnale, par a fi chestii pe care le
> >> primesti in siginfo_t in si_code [1],[2]
> >> 2. Nu vad de ce ar fi interzis sa verifici structura siginfo_t si
> >> continutul ei daca te ajuta in rezolvare, e aceasta restrictie
> >> mentionata pe undeva?
> >>
> >> [1] https://www.mkssoftware.com/docs/man5/siginfo_t.5.asp
> >> [2]
> https://elixir.bootlin.com/linux/latest/source/include/uapi/asm-generic/siginfo.h#L221
> >>
> >> On Mon, 15 Apr 2019 at 11:10, Adrian Șendroiu via so
> >> <so at cursuri.cs.pub.ro> wrote:
> >> >
> >> > Bună,
> >> >
> >> > La ce te referi mai exact? Alea nu sunt semnale.
> >> >
> >> > On Mon, 15 Apr 2019 at 10:22, Alice Suiu via so <so at cursuri.cs.pub.ro>
> wrote:
> >> > >
> >> > > Buna ziua,
> >> > >
> >> > > Este permis ca in cadrul rezolvării temei de pe Linux sa ne folosim
> de semnalele SEGV_MAPERR si SEGV_ACCERR pentru a verifica dacă o pagina
> este mapata sau nemapata?
> >> > >
> >> > > Mulțumesc,
> >> > > Alice Suiu
> >> > > _______________________________________________
> >> > > http://ocw.cs.pub.ro/courses/so/info/lista-discutii
> >> > _______________________________________________
> >> > http://ocw.cs.pub.ro/courses/so/info/lista-discutii
> >>
> >>
> >>
> >> --
> >> Cu stimă,
> >> Mihai Bărbulescu
> >> _______________________________________________
> >> http://ocw.cs.pub.ro/courses/so/info/lista-discutii
>
>
>
> --
> Cu stimă,
> Mihai Bărbulescu
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20190415/efc833fa/attachment.html>


More information about the so mailing list