Terve!
Olen koulun C-kurssilla tehnyt harjoitustehtäviä unixilla käyttäen lähinnä ohjelmia gcc, gdb ja valgrind. Vasta näin kurssin loppuvaiheilla vaivauduin asentamaan X-coden omaan macciini ja olen nyt jonkin aikaa tehnyt sillä harjoituksia. Ongelmaksi muodostuu kuitenkin muistivuotojen etsiminen. Olen selaillut kaikenlaisia ohjeita ja löytänyt vaihtoehdoiksi komentoriviltä toimivan leaks-ohjelman ja Xcoden instruments-kohdasta löytyvän leaks-valinnan. Lisäksi tuolta developer-kansiosta löytyi vielä mallocDebug.app.
Ongelmana kuitenkin se, ettei mikään noista oikein suostu toimimaan (edes) yksinkertaisten ohjelmien kanssa. mallocDebug.app ilmoittaa jotakin tyyliin "unable to read from null" tms.. kun valitsen siihen jonkin käännetyn ohjelman ja klikkaan "launch". Leaks taas ilmoittaa "leaks cannot find a process you have access to which has a name like 'ohjelman_nimi' ". Tuo Xcoden sisäinen leaks-instrument taas näyttää jonkinlaisen piikin aikajanalla ilmeisesti siinä kohti jossa muistia varataan, mutta en saa mistään esille, mikä funktio kyseisen muistinvarauksen tai vuodon aiheutti.
Tällaisia ongelmia siis.. Eli osaisiko (tai viitsisikö) joku auttaa ja kertoa jonkin tavan löytää C-ohjelmasta muistivuodon aiheuttanut funktio / muuta infoa vuodoista yms.. ehkä eniten kiinnostaisi, kuinka tuon "leaks"-komentoriviohjelman saisi toimimaan. Olen jo käyttänyt ongelman tutkimiseen useana päivänä useamman tunnin ja aina lopulta taipunut siihen, että teen muistivuotojen tsekkauksen unixilla valgrindilla.
Ongelma:Muistivuotojen etsiminen Xcodessa tai Macissa muuten
Xcode, Mac OS X Server sekä muuta hauskaa ja hyödyllistä
3 viestiä
• Sivu 1/1
-
- Viestit: 1
- Liittynyt: 17.3.2010 klo 17.40
- Paikkakunta: Espoo
Ongelma:Muistivuotojen etsiminen Xcodessa tai Macissa muuten
Viesti Kirjoittaja ouzoinio »
Yrittäminen on ensimmäinen askel kohti epäonnistumista.
-
- Viestit: 4725
- Liittynyt: 8.3.2004 klo 17.38
- Paikkakunta: Helsinki
Re: Ongelma:Muistivuotojen etsiminen Xcodessa tai Macissa muuten
Viesti Kirjoittaja spiidi78 »
FYI: Valgrind muuten toimii nykyään Macissakin. Tuo Leaks kait toimii jotenkin eri logiikalla valgrindiin nähden, en ole tutustunut kuin pintaraapasun verran. Tuntuu että leakit havaitaan pienellä delayllä ainakin C-sovelluksissa. Instruments ohjelmassa on siinä näkymässä View - Extended view muistaakseni (en pääse katsomaan) josta näkee vuotoja aiheuttavia rivejä suoraan koodista.
-
- Viestit: 317
- Liittynyt: 23.2.2004 klo 22.04
- Paikkakunta: Tarvasjoki
Re: Ongelma:Muistivuotojen etsiminen Xcodessa tai Macissa muuten
Viesti Kirjoittaja Virgo »
Uusimmassa XCodessa on myös tuo static code analysis (Clang), joka etsii mahdollisia vuotokohtia kooditasolla. Löytyy build valikosta: Build and Analyze. Instrumentsia käytettäessä tosiaan tuo Extended view (komento + e) näyttää missä kohtaa koodia vuoto tapahtui.
iMac 27"/i5 3.1GHz/12GB/6970M, MacBook Air 13"/i5 1.8GHz/256GB/8GB, iPhone 5 64GB, iPad 2 3G 32GB
Sanapeli iPhoneen: http://uusitupa.org/projects/lost-words
Ajopäiväkirja iPhoneen: http://uusitupa.org/projects/drive-journal
Sanapeli iPhoneen: http://uusitupa.org/projects/lost-words
Ajopäiväkirja iPhoneen: http://uusitupa.org/projects/drive-journal
3 viestiä
• Sivu 1/1
Palaa sivulle “Ohjelmointi, skriptit ja palvelimet”
Hyppää
- Yleiset aiheet
- ↳ Ajankohtaista Apple-maailmasta
- ↳ Käyttöjärjestelmät
- ↳ Ohjelmat
- ↳ Yleiskeskustelu
- Mac ja oheislaitteet
- ↳ Yleiskeskustelu laitteista
- ↳ MacBook, MacBook Pro ja MacBook Air
- ↳ iMac
- ↳ Mac mini
- ↳ Mac Pro ja Mac Studio
- ↳ Ongelmia Macin kanssa?
- iPhone, iPad ja Apple Watch
- ↳ iPhone-, iPad- ja Apple Watch -laitekeskustelu
- ↳ iPhone-, iPad- ja Apple Watch -ohjelmat sekä iOS
- ↳ Ongelmia iPhonen, iPadin tai Apple Watchin kanssa?
- Huviksi ja hyödyksi
- ↳ Off-topic
- ↳ Kuva ja graafinen suunnittelu
- ↳ Audio ja musiikki
- ↳ Video, televisio ja elokuvat
- ↳ Pelit ja pelaaminen
- ↳ Ohjelmointi, skriptit ja palvelimet
- ↳ Tietoturva ja varmuuskopiointi
- ↳ Verkot, mobiilidata ja muut puhelimet
- ↳ Retronurkka
- ↳ Foorumin ylläpito
- Kauppapaikka
- ↳ Myydään Mac
- ↳ Myydään iPhone, iPad ja iPod
- ↳ Myydään muut Applen tuotteet
- ↳ Myydään muuta tietotekniikkaa
- ↳ Ostetaan Mac
- ↳ Ostetaan iPhone, iPad ja iPod
- ↳ Ostetaan muut Applen tuotteet
- ↳ Ostetaan muuta tietotekniikkaa
- ↳ Vaihdetaan, annetaan, työtä haetaan ja tarjotaan
- ↳ Kauppapaikan keskustelu ja hintavinkit