strace

Sagteware kiekie:
strace
Sagteware besonderhede:
Weergawe: 4.19 Opgedateer
Upload datum: 23 Nov 17
Lisensie: Gratis
Populariteit: 23

Rating: 5.0/5 (Total Votes: 1)

strace is 'n oop bron en vrylik verspreide sagteware wat ontwerp is vir ontwikkelaars en stelseladministrateurs. Dit verskaf 'n stelseloproep-spoor in C en is ontwerp om uitsluitlik onder GNU / Linux bedryfstelsels te loop.

Die program is 'n baie nuttige debugging-, instruksionele en diagnostiese program wat al die stelseloproepe wat deur 'n program of 'n proses gegenereer word, kan versamel en 'n spoor uitdruk. Dit is 'n opdrag lynprogram wat slegs van 'n konsolomgewing of via 'n terminale emulatorprogram gebruik kan word.

Die instrument kan gebruik word deur diagnostici, probleemoplossers, sowel as stelseladministrateurs wat 'n waardevolle oplossing wil hê vir die oplossing van probleme met geslote bronprogramme. Dit is geskryf deur Dmitri V. Levin, Roland McGrath en Wichert Akkerman.


Opdrag lyn opsies

Soos enige ander command line sagteware bied Strace 'n wye verskeidenheid van opdraglyn opsies waarmee die gebruiker maklik al sy funksies en funksies kan gebruik om hul take te bereik. Al die command line opsies kan in 'n oogopslag gesien word deur die & lsquo; strace --help & rsquo; opdrag.

Onder die interessantste opsies vir opdraglyne, kan ons ondersteuning gee vir teltye, oproepe en foute vir elke stelsel, ondersteun vir die opsomming van latent latensie, ondersteuning vir die opsporing van toegang tot 'n sekere pad, ondersteuning om debug-uitvoer na stderr toe te laat, sowel as ondersteuning vir die bestuur van 'n spoorproses as 'n losstaande kleinkind, nie as 'n ouer nie.

U kan ook spoor inligting stuur na 'n spesifieke lêer in plaas van stderr, om die bokoste te stel vir die opsporing van syscalls na 'n oorhoofse usecs, om 'n PID-lêer vir die spoorproses te stel, om die lengte van drukstringe te beperk. om karakters uit te brei, om opdragte te bestuur as gebruikersnaamhandleiding setgid en / of setuid, en om op 'n spesifieke syscall los te maak.


Begin met strace

Strace word net as 'n bron tarball versprei, maar dit kan maklik geïnstalleer word op talle verspreidings van Linux vanaf hul hoofprogrammatuurreplitories. Om dit vanaf bronne te installeer, laai die nuutste weergawe van Softoware af, red die argief op 'n plek van u keuse en pak dit uit.

Open 'n Terminal-program, gaan na die plek van die onttrekde argieflêers (bv. cd / home /softoware/strace-4.9), voer die ./configure && make & rsquo; instruksies om strace te konfigureer en saam te stel, en voer dan die 'installasie' uit; & rsquo; opdrag as wortel of die "sudo maak installeer & rsquo; opdrag as 'n bevoorregte gebruiker om strace stelsel wyd te installeer.

Wat is nuut in hierdie weergawe:

  • Verbeterings:
  • Bygevoeg-u0026 # 39; n opsie om protokol en adres inligting wat verband hou met socket descriptors te druk.
  • Uitgebreide "-e lees = ingestel" en "-t skryf = stel" opsies om sendmsg, recvmsg, sendmmsg en recvmmsg syscalls te dek.
  • Implementeer volledige 32-bits dekodering van ioctl opdragte (adresse Debian bug # 692913 en Fedora bug # 902788).
  • Implementeer PTRACE_GETREGS API-ondersteuning op ia64.
  • Implementeer PTRACE_GETREGS API-ondersteuning op mips.
  • Implementeer PTRACE_GETREGSET API-ondersteuning op s390 / s390x.
  • Implementeer dekodering van getrandom en seccomp syscalls.
  • Implementeer volledige dekodering van 64-bits vermoëns.
  • Implementeer dekodering van alle prctl opdragte.
  • Implementeer dekodering van parametriese ioctl opdragte.
  • Implementeer dekodering van evdev ioctl opdragte.
  • Implementeer dekodering van v4l ioctl opdragte.
  • Implementeer dekodering van SG_IO v4 ioctl opdragte.
  • Implementeer dekodering van FIFREEZE / FITHAW / FITRIM ioctl opdragte.
  • Implementeer dekodering van FALLOC_FL_ * fallocate flags.
  • Implementeer dekodering van rt_sigreturn seinmasker op aarch64, x32 en x86_64.
  • Verbeterde socket-dekodeerder om bluetooth voetstukke te ondersteun.
  • Verbeterde dekodering van ongenoteerde ioctl opdragte.
  • Verbeterde dekodering van getockopt en setockopt syscall.
  • Verbeterde dekodering van sysinfo syscall.
  • Verbeterde dekodering van struct cmsghdr.
  • Verbeterde dekodering van wagstatus.
  • Verbeterde ondersteuning vir nie-x86-argitektuur deur eksterne libaio.h te gebruik.
  • Bygevoeg O_TMPFILE aan die lys van erkende oop modus vlae.
  • Opdateer die lys van konstantes van lêersisteem wat gebruik word in die dekodering van statfs familie syscalls.
  • Opgedateerde lyste van CAP_ *, PR_ *, PTRACE_ *, SCHED_ *, SO_ *, SOL_ *, SWAP_FLAG_ * en TFD_ * konstantes.
  • Opgedateerde lyste van seinkonstantes van Linux 3.19.
  • Opgedateerde lyste van errno-konstantes van Linux 3.19.
  • Opgedateerde lyste van ioctl opdragte van Linux 3.9.
  • Bygevoeg nuwe syscall-inskrywings wat ooreenstem met Linux 3.19.
  • Bug fixes:
  • Vaste verskillende foute in die kartering tussen syscall nommers en gepaardgaande inligting soos die aantal syscall argumente, die naam van syscall en syscall dekodeerder.
  • Vaste kwotasies in drukbeskrywers, lêername, netwerkkoppelvlakname, struktuuruitsname-lede, toestel- / volume-name van BLK * ioctl-opdragte.
  • Vaste uid_t / git_t-dekodering.
  • Fixed potential out-of-bounds lees probleme in getdents / getdents64 decoders.
  • Vaste potensiële oop vlae afknip op sommige argitektuur.
  • Vaste dekodering van struct ifreq.ifr_name.
  • Vaste dekodering van SIOCSIFNAME ioctl opdrag.
  • Vaste dekodering van RENAME_ * renameat2 vlae.
  • Vaste dekodering van UTIME_NOW / UTIME_OMIT tydige strukture.
  • Vaste dekodering van indirekte ipc subcalls op sommige argitektuur.
  • Vaste dekodering van fanotify_mark syscall op 32-bis-argitektuur.
  • Vaste dekodering van 32-bis statstrukture op 64-bis-argitekture.
  • Vaste dekodering van 32-bis-strukture cmsghdr op 64-bis-argitekture.
  • Vaste dekodering van 32-bis preadv / pwritev-offset op 64-bis-argitekture.
  • Vaste dekodering van sigreturn / rt_sigreturn seinmasker op ia64, ppc, ppc64, sparc, sparc64, mips en s390.
  • Vaste opdrag wyseruitvoer (-i opsie) op argitekture wat verskeie persoonlikhede ondersteun.
  • Vaste gedrag van "-lees = stel" en "-t skryf = stel" wanneer lees en skryf stelle sny.
  • Vaste bou op stelsels waar struct sigaction geen sa_restorer lid het nie.
  • Vaste bou met uclibc en musl libc.
  • Oordraagbaarheid:
  • Linux kernel> = 2.5.46 is nodig. Ouer weergawes sonder 'n ordentlike PTRACE_SETOPTIONS ondersteuning sal nie werk nie.
  • Op mips is Linux kernel = 2.6.15 nodig. Ouer weergawes sonder 'n ordentlike PTRACE_GETREGS-ondersteuning sal nie werk nie.
  • Op s390 en s390x is Linux kernel = 2.6.27 nodig. Ouer weergawes sonder 'n ordentlike PTRACE_GETREGSET-ondersteuning sal nie werk nie.

Wat is nuut in weergawe 4.9:

  • Veranderings in gedrag:
  • Gestremde OABI-ondersteuning op ARM EABI-stelsels as standaard, bygevoeg --able-arm-oabi opsie om dit in staat te stel om tyd te stel.
  • Verbeterings:
  • Toegevoegde eksperimentele opsie -k om stapelspoor na elke opgespoorde syscall te druk.
  • Bygevoeg -w opsie om statistieke op sycall latency te produseer. (adresse Debian bug # 457497).
  • Bygevoeg ARC argitektuur ondersteuning.
  • Bygevoeg PTRACE_GETREGS API-ondersteuning op PowerPC.
  • Verbeterde Bionic libc en musl libc ondersteuning.
  • Verbeterde opsporing van x86 persoonlikheidsprosesse op x86_64 en x32.
  • Verbeterde opsporing van ARM-persoonlikheidsprosesse op AArch64.
  • Verbeterde 32/64-bits persoonlikheidsdeteksie op PowerPC.
  • Implementeer dekodering van add_key, ioprio_get, ioprio_set, kexec_load, keyctl, renameat2 en request_key syscalls.
  • Robuuste dekodering van selekteer, pselect, en io_subscribe syscalls.
  • Verbeterde dekodering van delete_module, fanotify_init, fanotify_mark, fcntl, setdomainname, sethostname, setns en sync_file_range syscalls.
  • Verbeterde dekodering van seinbitsmasjiene.
  • Verbeterde dekodering van lêerbeskrywers.
  • Verbeterde siginfo_t-dekodering.
  • Verbeterde PF_NETLINK-dekodering.
  • Opgedateer CLOCK_ * konstantes (adresse Fedora bug # 1088455).
  • Bygevoeg nuwe syscall-inskrywings wat ooreenstem met Linux 3.16.
  • Bug fixes:
  • Bygevoeg shmat en shmdt aan die stel geheue kartering verwante syscalls.
  • Vaste losmaak van gestopte prosesse.
  • Vaste fanotify_mark-dekodering op 32bit-argitekture.
  • Vaste offset-dekodering in preadv en pwritev syscalls.
  • Vaste kies dekodering vir glibc in _FORTIFY_SOURCE af.
  • Vaste dekodering van epoll_ctl syscall met EPOLL_CTL_DEL argument.
  • Vaste bou wanneer en konflik (adresse Fedora bug # 993384).
  • Diverse regstellings in die handleiding. (Adresse Debian bug # 725987).

Wat is nuut in weergawe 4.8:

  • Veranderings in gedrag:
  • In die geval van normale strace-beëindiging, wanneer die spooruitset na 'n pyp herlei word, sluit die strace dit nou en wag vir die pypproses beëindiging voor uittrede.
  • Verbeterings:
  • Implementeer opsporing met PTRACE_SEIZE API (wanneer beskikbaar).
  • Implementeer betroubare PTRACE_GETREGSET-gebaseerde proses persoonlikheidsdeteksie op x86-64 en x32 (indien beskikbaar).
  • Bygevoeg -e spoor = geheue opsie vir die opsporing van geheue kartering verwante syscalls.
  • Gedokumenteer -b opsie.
  • Toegangsertifikate vir verlaatstatus moet onderdruk word deur twee keer -q opsie te gee.
  • Bygevoeg AArch64 argitektuur ondersteuning (adresse Debian bug # 693074 en Fedora bug # 969858).
  • Bygevoeg ondersteuning vir OpenRISC 1000, Meta, en Xtensa argitektuur.
  • Bygevoeg totegx-persoonlikheidsondersteuning vir Tile.
  • Verbeterde ondersteuning van NOMMU-argitektuur.
  • Verbeterde dekodering van getdents, mmap, perf_event_open, ptrace en quotactl sycalls.
  • Bygevoeg nuwe syscall-inskrywings wat ooreenstem met Linux 3.9.
  • Die lys van algemene ioctl name van Linux 3.9 hergebou.
  • Opdateer die lys van errno konstantes.
  • Opgedateerde lyste van AF_ *, MADV_ *, MAP_ *, MSG_ *, MS_ *, PF_ *, PR_ *, PTRACE_O_ * en TCP_ * konstantes.
  • Implementeer dekodering van UBI ioctls.
  • Onnodig verwyder "* 32" ioctl name.
  • Bug fixes:
  • Vaste ERESTARTNOINTR lek gebruikersruimte op antieke pitte (adresse Fedora bug # 659382).
  • Parsing met 'n vaste kern-vrystelling (adresse Debian bug # 702309).
  • Vaste dekodering van * xattr syscalls (adresse Fedora bug # 885233).
  • Vaste hantering van lêers met 64-bis inode nommers deur 32-bis strace (adresse Fedora bug # 912790).
  • Vaste sporingvurke op SPARC.
  • Vaste dekodering van fadvise64, fallocate, ftruncate64, io_submit, pread, preadv, pwrite, pwritev, readahead, sigaltstack, sync_file_range, sysctl en truncate64 syscalls.
  • Vaste kategorieë van verskeie syscalls op die meeste ondersteunde argitektuur.
  • Vaste dekodering van nie-inheemse 32-bis persoonlikheidsherwinning [m] msg syscalls.
  • Vaste dekodering van veelvuldige 32-bis persoonlikheidssyskale op x32.
  • Vaste dekodering van lang lang sirkelargumente op ARM, MIPS / o32, PowerPC, S390x en Tile-argitektuur.
  • Vaste semtimedop-dekodering op S390x.
  • Vaste sram_alloc-dekodering op Blackfin.
  • Vaste bou wanneer process_vm_readv 'n steek is.
  • Vaste bou met ouer weergawes van libaio.h.

Wat is nuut in weergawe 4.7:

  • Hierdie is 'n stabiele weergawe, met die gewone foute, verbeterde ondersteuning vir vars Linux pitte en ander verbeterings.

Wat is nuut in weergawe 4.6:

  • Hierdie is 'n stabiele weergawe, met gewone foute, verbeterde ondersteuning vir nuwe Linux-pitte en ander verbeteringe, insluitend 'n nuwe metode om klone-, vurk- en vfork-syskale te volg, met die Linux-kern se eksplisiete fasiliteite vir die opsporing van die skep van drade en kinderprosesse.

Wat is nuut in weergawe 4.5.20:

  • Verbeterings:
  • Implementeer dekodering van nuwe Linux syscalls: inotify_init1, recvmmsg.
  • Implementeer basiese dekodering van nuwe Linux-syscalls: preadv, pwritev, rt_tgsigqueueinfo, perf_event_open.
  • Verbeterde dekodering van onlangs bygevoeg sycalls op nie-x86-argitektuur deur 'n blote dekodeerder te vervang met uitgebreide parsers wat vroeër vir x86 / x86-64 aangeskakel is.
  • Implementeer-C opsie om gereelde en -c uitset te kombineer. (Adresse Debian bug # 466196)
  • Verbeterde dekodering van mbind en mremap syscalls.
  • Verbeterde SOL_PACKET sokopties-dekodering.
  • Regenereerde lys van ioctl name van Linux 2.6.33.
  • Bygevoeg TILE argitektuur ondersteuning.
  • Bug fixes:
  • Vaste bou met Linux kern hoofde 2.6.32-rc5 +. (Adresse Debian bug # 560516 en Fedora bug # 539044)
  • Vaste bou op mips.
  • Vaste hantering van Linux-stelsels sonder struktuur statfs64.
  • Vaste verslae seinmasker deur sigreturn op powerpc.
  • Vaste potensiaal stapel buffer oorloop in die dekodeerder. (Adresse Fedora bug # 556678)
  • Korrekte beskadigde indirekte ipccall-dekodering.
  • Korrekte dekodering van 64bit syscalls. (Adresse Debian bug # 570603)
  • Korrekte krykodering op argitektuur waar die grootte van (lang)> sizeof (int). (Adresse Debian bug # 494844)
  • Korrigeer dekodering van epoll_pwait. (Adresse Debian bug # 513014)
  • Korrekte hantering van vermoorde drade.

Soortgelyke sagteware

VimPdb
VimPdb

11 May 15

Cleaner
Cleaner

3 Jun 15

Splint
Splint

3 Jun 15

Fiddler for Mono
Fiddler for Mono

17 Feb 15

Kommentaar te strace

Kommentaar nie gevind
Kommentaar te lewer
Draai op die foto!