![]() |
Segmentation fault in Unix
Kan een segmentation fault in Unix veroorzaakt worden doordat ik verkeerde variabelen in een programma invoer, of ligt zo'n error aan het programma zelf?
|
Lijkt me genoeg leesvoor over te vinden:
http://en.wikipedia.org/wiki/Segmentation_fault Tenzij je specifieker kunt zijn. |
Ja dat soort informatie had ik zelf inderdaad ook al gelezen. Volgens alles dat ik tot nu toe gezien heb komt het door een fout in het programma, maar ik kan me eigenlijk niet voorstellen dat dat zo is in mijn geval. Vandaar dat ik me afvroeg of het ook door mijn eigen invoer kan komen dat ik zo'n error krijg, maar daarover kan ik niks vinden op internet.
En specifieker zijn kan wel, het gaat om de tau-p transformatie in Seismic Unix met taup file_in=... file_out=... maar ik verwacht niet dat iemand op dit forum daar ervaring mee heeft. |
Wel, je kan het zo redeneren: als je software crashed op input die jij geeft, dan is ie brak geschreven. Ja toch? Ongeldige waardes hoort het programma niet toe te staan en uit te filteren. Ook gezien het feit dat de applicatie een bepaalde memory locatie verkeerd aan probeert te roepen suggereert dat hij niet helemaal kosher is geschreven.
Doet de software het wel met andere input waarden? Zo ja, wat voor invloed heeft jouw input dan op het aanroepen (lezen/schrijven) van geheugen locaties? |
Ik heb nog even wat dingetjes zitten proberen, andere variabelen e.d., en hij geeft eigenlijk altijd die error tenzij ik aangeef dat het programma aliasing van de data (weet niet wat dat in NL is) toe mag staan. Het duurt dan wel heel lang voordat ik een output krijg, te lang eigenlijk.
Dan maar wat andere programma's uitproberen. |
heb je de source van het programma?
|
Nee, zou ook niet weten hoe ik daaraan moet komen eigenlijk. Maar ik heb al een ander programma gevonden dat na veel proberen wel werkt :)
|
Opzich een grappige Unix variant, doe je ook iets in de mijnbouw?
|
Nu nog wel ja, jij ook dan?
|
Ik ben Unix systeembeheerder dus ik weet wel wat van de basis waarop het besturingssysteem werkt waarmee jij problemen mee hebt.
Ik had alleen nog nooit gehoord van Seismic Unix. :) Waarom "nog wel"? Wil je iets anders doen? |
Ik doe nu een bachelor in mijnbouw, heel leuk, maar ik wil niet in dat vakgebied gaan werken dus daarom ga ik een andere master doen.
Seismic Unix is denk ik gewoon de naam van het programma en niet een echt besturingssysteem ofzo. Volgens mij kun je het gewoon installeren en dan heb je de beschikking over extra programma's in Unix om seismische dingen mee te doen :cool: Maargoed, ik heb er verder totaaaaaaal geen verstand van dus misschien zit het wel allemaal veel ingewikkelder in elkaar. Ik ben allang blij als dat programma een klein beetje doet wat ik wil. |
Citaat:
Maar als je er niet in die richting wilt werken, wil je nog steeds wel iets doe in geologie? |
Citaat:
En of ik nog wat ga doen in de geologie.. ik verwacht eigenlijk van niet. Geologie vind ik heel interessant om dingen over te weten, maar qua werk wil ik liever wat wiskundigs gaan doen. |
Citaat:
programmeren bijvoorbeeld? :P Dan kan je heel wat segmentation faults oplossen en/of maken. ;) Maar ik neem aan dat je dat niet bedoelt. ;) |
Ja haha het zal op het begin wel vooral segmentation faults maken worden :D hopelijk weet ik ze later ook op te lossen..
Plan is om Scientific Computing te gaan doen, dus ook een flinke dosis programmeren, en dat zou ik eigenlijk al moeten kunnen maar ik kan het nog maar een heel klein beetje. Is het heel moeilijk/tijdrovend om bijvoorbeeld C echt goed te leren? (ik neem aan dat jij dat wel kunt als Unix-expert :p) |
Ik kan wel wat programmeren in ANSI C, ja. Op z'n minst " Hello World" :P
Maar het is wel zo dat je avontuurlijk aangelegt moet zijn voor C/C++ development. Het enige (wat ik moeilijk vind) is memory management en classes. In C/C++ moet je dat zelf regelen. Wat in Java automatisch word gedaan en waar je dus ook niet naar hoeft te kijken als programmeur. En het is ook waarvoor je het wilt gebruiken. In Scientific Computing ga je dus iets doen met het ontwikkelen van hoogwaardige software waar je alleen met een venstertje en een button niet volstaat. Dus ik zeg wel zet je schrap. Je zal heel snel van " Hello World" naar library's en high demand software development gaan. Wat ik dus bedoel dat je wordt opgeleid als programmeur die applicaties kan maken die wetenschappelijke bewerkingen kan doen. Dit is wat ik denk hoor. In Unix/Linux wordt het meestal gebruikt voor het ontwikkelen van applicaties voor beheer enzo. En tegenwoordig is dat niet echt noodzakelijk dat je het kent. Omdat je ook heel veel kan doen met shellscripting. Ik heb het mijzelf aangeleerd omdat ik wel leuk vind. En het heeft zich af en toe wel nuttig bewezen af en toe. ;) Het is wel zo dat wanneer je C++ kent dat je snel over kan stappen naar Java. Wat heel snel zal gebeuren tijdens de opleiding denk ik. Ik denk ook dat wanneer jij klaar bent ermee dat ik wat van jou kan leren. :D Maar waarom wil je de opleiding doen? |
Nouja, heel simpel eigenlijk, omdat ik het altijd al heel leuk heb gevonden om met wiskunde bezig te zijn, en nu ik in m'n bachelor wat programmeerdingen heb gehad ben ik dat ook ontzettend leuk gaan vinden. Vandaar dat ik een baan in die business wel zie zitten en dan lijkt me een master S.C. heel logisch :)
Geologie vind ik alleen interessant om te weten, maar de banen erin trekken me veel minder. Ik vind de overstap alleen wel een beetje eng want ik ben bang dat het allemaal heel moeilijk gaat worden met programmeren enzo. En het klopt ook wel wat je zegt, dus het gaat ook moeilijk worden. Maar Hello World kan ik wel al :p en nog wel wat meer natuurlijk. Ach, uiteindelijk komt het vast goed. Ik kan me alleen nog niet zo voorstellen dat er ooit mensen zoals jij van mij kunnen gaan leren! Net weer een (simpel) matlab scriptje werkend gekregen, dat geeft toch een beetje vertrouwen :) |
Ik denk van wel. Want wanneer je klaar bent, weet je hoe een applicatie moet ontwikkelen op een hoogstaande manier.
Maar als je Matlab makkelijk vind is de overstap naar C/C++ niet eens zo groot. Alleen je weet niets over loops als ik het mij herinner over Matlab. Maar dat is heel makkelijk: if, else if else statement Code:
while loop: Code:
|
Dankje :) maar matlab werkt ook met loops hoor! Hoewel de codes wel iets anders zijn dan in C/C++ (matlab is simpeler :p). Maargoed, dat valt best onder de knie te krijgen, het ziet er niet zo heel moeilijk uit.
|
Het snappen van C++ tot classes en strucs is inderdaad niet zo moeilijk. Dat valt nog onder het mom van ff een dagje ervoor zitten en dan heb je het wel door.
Ben je nog niet ermee bezig om het je eigen te maken? -O- |
Ja ik was er een tijdje geleden wel mee begonnen, maar nu slokt m'n bachelorproject zo'n beetje al m'n tijd op. En dat schiet niet bepaald op :mad:
Maar op één weekje weg na ben ik niet van plan om vakantie te nemen deze zomer, en ik neem aan dat m'n project toch ook geen maanden meer gaat duren, dus als het goed is heb ik zeker nog een maand om fulltime te leren programmeren. En dan maar hopen dat dat genoeg is :) |
Oef, dan kom je niet op een zachtzinnige manier kennis van C/C++.
Ik hoop inderdaad dat de tijd die er nog voor heb genoeg aan heb. Ik hou me aanbevolen als je vragen heb. :) Met wat voor boeken doe je het nu? |
Das aardig :)
Op dit moment gebruik ik nog ff zo'n online boek, The C Book van Banahan, Brady en Doran, maar op het moment dat ik me er volledig op ga storten wil ik wel een echt boek kopen, dat lijkt me toch beter. Maar dat stel ik nu alsmaar uit omdat ik geen idee heb wat een goed boek is en ik wil ook weer niet de verkeerde aanschaffen :o Ik zat te denken aan C Programming Language van Ritchie, maar als dat te moeilijk is kan ik altijd nog voor C for Dummies gaan natuurlijk ;) |
The C programming language is een onmogelijk boek om uit te leren(en velen programmeurs delen die mening met mij). Dan kan inderdaad nog over naar C++ for dummies. Ik zelf heb heel lang gezocht naar een goed boek maar dat is zeer moeilijk te vinden. Wat je anders kan doen is kijken of O'Reilly's C++ in a nutshell iets voor je is.
|
Die 'for dummies'-boeken zijn op technisch niveau toch echt voor dummies, ik zou er niet op vertrouwen dat je daarmee de taal goed gaat beheersen. Van het minste dat de mogelijkheid bestaat dat hun boek in de buurt komt van een iets minder simpel onderwerp, beginnen ze al te waarschuwen: 'je kan er dit en dat mee, maar het is te moeilijk dus we zeggen enkel dat het bestaat'. Bv. bij hun database-boeken: veel-op-veel-relaties, terwijl dat dat een fundamenteel iets is.
Ik kan nu zelf geen C/C++ dus ik kan je niet zeggen wat wel een goed boek is, maar wel dat For Dummies ook echt enkel is wat het zegt: voor mensen die niets te zeggen hebben over het onderwerp. |
C for Dummies zag ik ook niet echt als serieuze mogelijkheid hoor :p ik wil het wel écht goed leren.
Op bol.com stonden twee hele positieve reacties over dat boek The C programming language, vandaar dat ik dat aan het overwegen was. Maar misschien is het meer bedoeld als naslagwerk en dat is niet echt wat ik zoek natuurlijk. Edit: hm op internet staan wel goede verhalen over C/C++ in a nutshell, bedankt voor de tip (y) ff een winkel zoeken waar ze het verkopen, dan ga ik het eens inkijken. |
Geen dank. Ik verwacht gewoon dat je binnen de kortste keren een software pakket in elkaar kan flanzen. :p
Met ITboeken (en ik heb er genoeg) zeg ik: je moet het in je handen hebben gehad voordat je uberhaubt kan zeggen dat het goed is. Het kan zijn dat de aanpak van de schrijver jou niet ligt, maar voor een ander wel. Maar ik ga er vanuit dat het helemaal goed gaat komen. Je hebt meestal bij een van de Selectyz vestigingen dat deze boeken kan bekijken/bestellen ter inzage. Moet je inderdaad even bekijken. |
Jij hebt er veel vertrouwen in, ik hoop dat je gelijk krijgt :p
Ik woon in Den Haag en er zit hier een enorme Selexyz vestiging in de buurt, dus met die boeken gaat het vast ook goedkomen. En toch bedankt voor alle tips. |
Citaat:
Maar als jij in DH woont, dan zit je bij TU Delft op school? |
Uiteraard, ik ga er helemaal voor!
En inderdaad in Delft, maar over een paar maandjes Utrecht als alles goed gaat. Wel jammer om weg te gaan uit Delft want de stad en de TU zijn erg leuk. Maar dat is Utrecht vast ook. |
Citaat:
|
Citaat:
Ik heb ooit les gehad uit 't C++ boek van Ammeraal. Dat's ook niet bepaald een aanrader (n) |
Citaat:
|
Citaat:
Persoonlijk vind ik dat je niet moet kijken naar de hoeveel tijd wat je kwijt bent aan iets maar wat je ervoor terugkrijgt. Als een half jaar tot een jaar kan uitmaken dat jij op een goede manier een opleiding goed kan afronden, waarom niet? Dit verdien je wel terug in de toekomst. Maar dit is een mening. ;) Maar het is wel een keer leuk om een keer ergens anders te zitten dan Delft. Alleen al vanwege het feit dat je dan niet lang met je medeschoolgenoten massaal op de bus hoeft te wachten. En Utrecht is opzich een heel relaxed. |
Citaat:
Waarschijnlijk beginnen ze in Delft gewoon op een hoger niveau ofzo. Er is dan wel weer veel ruimte om vakken bij andere opleidingen te volgen, maar dat heb ik wel al genoeg gedaan in m'n bachelor. Ik ben het wel met je eens hoor, dat je in principe niet moet kijken naar de tijd die ervoor staat, maar of ik die opleiding nou hier doe of in Utrecht, het resultaat is als het goed is ongeveer hetzelfde. Op een ingenieurstitel na natuurlijk, maar ach.. In Utrecht kun je weer zelf een toepassingsgebied kiezen en dat heb je hier niet echt voor zover ik weet. Trouwens, ik fiets meestal naar Delft dus ik rijd altijd vrolijk voorbij alle mensen die op de bus staan te wachten :p |
Citaat:
Welke toepassingsgebieden kan je dan kiezen, weet je dat? En ga je ook naar Utrecht verhuizen of vind je het wel gezegend in Den Haag? |
Jongens, nu gaat het wel érg ver offtopic. Ik stel voor dat jullie dit verder per pm of msn bespreken :)
|
Ohja sorry :bloos:
|
Zie dit maar als soort van: Unix geheimtaal.
Zovan: Ik ga naar huis = cat /var/log/named 2> /dev/null |
Alle tijden zijn GMT +1. Het is nu 19:56. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.