본문 바로가기

컴퓨터 관련/Linux || Unix52

[gdb] gdb 소스코드와 함께 디버깅 하는 방법 (layout) 리눅스에서 프로그램을 코딩할 때 따로 IDE를 사용하는 것이 있다면 모르겠지만..기본적으로 gdb를 사용해서 디버깅을 할 것이다. gdb의 기능은 무궁무진하기도 해서..활용을 잘하면 굉장한 디버깅 툴이긴 하다. 이런 gdb에 단점이 있었다면 프로그램 코드를 함께 보면서 디버깅을 진행할 수가 없어서 불편했었다.그래서 필자 같은 경우에는 프로그램 코드를 따로 켜서 진행했었는데.. 역시, 무식하면 몸이 고생한다는 걸까..gdb도 프로그램 코드를 따로 보면서 진행할 수 있었다.. 물론 cgdb를 이용하면 쉽지만, 임베디드 시스템에서 디버깅을 하다보면, cgdb를 이용하지 못하는 경우가 있으므로.. 여튼, gdb에서 프로그램 코드를 함께 보면서 디버깅 하는 방법을 소개하려고 한다. 먼저, gdb를 실행한 후, 아.. 2018. 7. 21.
[Linux] gdb 긴 문자열 전부 출력하는 방법 gdb를 사용하다가 string이 전부 나오지 않아서 확인을 못했던 경우가 종종 있었다.이러한 경우, 해당 문자열을 모두 확인하는 방법은 굉장히 간단하다. 먼저, 아래 사진을 보면 간단한 예제를 확인할 수 있을 것이다.cgdb를 사용하여, 아래 문자열을 반복해서 string 변수에 더하도록 하는 예제이다. 예제 이미지의 gdb 화면에서 str를 출력해보았을 때 전부 출력되지 않는 것을 볼 수 있다. 잘 보면 끝에 "..."으로 끝나고 있다. 이러한 문제를 해결하는 것은 간단하다.1set print elements 0cs위의 문자열을 gdb에 입력해주면 문자열 전부를 확인할 수 있을 것이다. 그럼, 위의 문자열을 적용하였을 때, str를 다시 출력해보자.위처럼, str의 모든 값이 출력되는 것을 확인할 수.. 2018. 6. 20.
[Linux] 리눅스 USB FAT32 포맷하는 방법 정리 가장 흔히 사용하는 리눅스 중 우분투에서 USB를 FAT32로 포맷하는 방법을 정리하려고 한다.우분투에서도 윈도우처럼 포맷하는 기능은 GUI로 제공하지만, FAT32로 정확하게 포맷되지 않는 경우가 종종 있었다. 이럴 경우에는 터미널에서 명령어를 이용하여 포맷하면 문제가 해결되는 경우를 종종 보았다.포맷하는 방법은 굉장히 간단하므로, 아래 방법을 따라해보자.* 주의할 점은 포맷할 디스크의 이름을 정확하게 봐야한다. 필자 같은 경우에는 USB 장치명이 아닌, 백업 하드디스크 이름을 적는 바람에 백업 내용을 날려버렸다.. 일단, 포맷을 하려면 포맷할 USB를 인식시켜야 한다. 요즘 리눅스는 꼽기만 해도 자동으로 인식이 되므로, 마운트하기 위해서 따로 할 것은 없다.USB를 연결했으면, 디바이스 이름을 확인해.. 2018. 6. 17.
[Linux] zdump 로 지역별 GMT/ DST 알아내기 1. zdump 란?zdump는 우분투에서 제공하는 명령어 중 하나이다.용도는 각 지역 별로 타임존 덤프를 읽는 명령어라고 보면 될 것 같다. 타임존은 GMT와 DST와 관련이 있는데, 이러한 용어를 모른다면 다음 링크를 참고해보자.[GMT 알아보기][DST는 나중에 정리할 기회가 생기면, 관련 링크를 달겠습니다.] zdump의 사용 구문은 다음과 같습니다.1zdump [ --version ] [ --help ] [ -v ] [ -c [loyear,]hiyear ] [ zonename ... ]cs 위의 구문에 맞게 zdump를 사용하면, 각 지역 이름의 현재 시간과 관련 정보가 출력됩니다.각 플래그는 다음과 같습니다. 플래그 설명 -c [loyear,] hiyear 연도를 지정하면 연도에 맞는 시간 정.. 2018. 6. 7.