sigsegv 검색을 통해 유입된 내역이 하나 보여서 잠깐 설명.
Unix 계열(Linux든 BSD든 OS X든)에서는 시그널(signal)이란게 있다. 자세한 설명은 배재. 그냥 프로그램과 OS 및 Shell 등 타 프로그램 (그리고 유저입력?) 사이에 메시지 등을 전달하기 위한 메카니즘이라고 하면 되려나. (설마 DOS나 Windows계열도 있으려나?)
이 시그널 중에 대표적인게 SIGINT와 SIGSEGV가 있다. 이름이 SIG로 시작되는데 Signal의 약자로 보면 되겠다.
SIGINT는 (오래되서 기억이 잘 안나는데) 흔히 Ctrl-c를 누르면 발생되는데 프로그램 종료를 위해 많이 캐치하는 시그널이다. INT의 의미는 인터럽트(Interrupt)로 기억한다...
SIGSEGV는 친구들 사이에서 '똥싸고 죽는다'라고 부른다. 길게 Segmentation Violation 혹은 Segmentation Fault라 불리우는 이 시그널은 '비정상종료' 혹은 '메모리엑세스 오류' 혹은 '미친짓' 등등 -_- 으로 인해 OS에 의해 강제로 종료될 때 발생하고, Unix 계열에선 이 경우 메모리덤프 파일인 core를 남기고 죽는다고 해서 '똥싸고 죽는다' 라고 표현한다. (core를 이용해 디버깅을 할 수 있는 친절한 유닉스 ㅠㅠ) 윈도우 계열에서는 보기싫은 에러 다이얼로그가 뜨면서 죽기 때문에 역시 '똥싸고 죽는구나' 라고 표현이 가능할지도...
요즘처럼 GUI가 대세인 시대에는 거의 안쓰이는 거겠지만 뭐 기록으로라도 남겨놓자. 후후후...
ps. 블로그이름에 SIGSEGV를 쓴 이유는 '빌어먹을 내 머리'를 위한 비유다 -ㅁ-
Popular Posts
-
내 나이대도 이제는 젊다고 하기에는 힘든(?) 수준으로 치닫고 있다. 세월의 흐름이 너무 빨라서 아쉽고 벅차고 숨차기는 하지만, 이럴 때 일 수록 추억을 떠올려 보면 나름 재미있는 세월을 보냈구나 생각이 든다. 이참에 옛날 옛적에 쓰던 구식 컴퓨터...
-
macOS를 모하비(Majave)로 올리고 난 뒤 얼마 후 타임머신 백업이 계속 실패하는 현상이 발생 했습니다. 당시 2TB 외장하드를 타임머신 백업용으로 세팅해서 수 년 간 아무 문제 없이 잘 써 왔었기 때문에 좀 이상하다는 점을 느꼈습니다. 이 글...
-
Q. 1.3과 1.12 중 어느 버전이 더 최신 버전인가요? A. 1.12가 더 최신버전입니다. 위의 같은 질문류를 커뮤니티에서 본 적이 있는데 놀랍게도 1.3을 1.12보다 더 높은 버전으로 생각하는 사람이 많은 것 같았다. 그래서 이번에는 버...
-
iTerm2에서 tmux를 이용해 페인(pane)을 나누었을 경우 화면이 깨지는 케이스가 있다. 예를 들자면 아래 스크린샷 같은 경우이다.
-
Vim에서 한글을 입력하다 ESC를 눌러서 편집모드를 빠져 나와서 다른 커맨드를 입력하려 할 때 동작 안하는 경우가 있다. 한글 상태라서 키 입력을 제대로 못 알아먹는 상태인데 수동으로 영문으로 바꿔주면 되긴 된다. 이런 불편함으로 인해 영어만을 사용...
-
Git로 다수의 브랜치를 관리하며 브랜치간 머지(merge) 하기는 굉장히 간단한 일이다. 하지만 의외로 다른 브랜치의 일부 파일만 복사(즉 파일간 머지)해 오는 형태의 작업은 많이 하지 않나보다. 찾아보니 의외로 기존 명령어에 옵션을 하나 추가해서 ...
-
특정 키워드를 정리하는 코딩을 하고 있었는데 가끔 중복되는게 있어서 검색으로 일일이 찾아보면서 코딩을 하고 있었다. 그런데 입력한 코드를 정렬해 두면 미리 검색해 보지 않아도 어느 정도 쉽게 중복되는 것이 눈에 들어오지 않을까 하는 생각에서 Vim에서...
-
앞서 brew로 vim 설치하기 를 썼었는데 삽질이 되어버린 기분이다. GUI전용인 줄 알았던 MacVim 을 터미널에서도 쓸 수 있다는 것을 알게 되었기 때문이다.
-
Xcode 8이 드디어 베타 딱지를 떼고 GM 마크를 박고 올라왔다. 이제 기능 면에서 바뀔 일은 없을 것 같으니 마지막으로 마무리 하는 겸으로 무엇이 바뀌었는지에 대한 경험담을 이어서 적어본다. 이 글은 ' Xcode 8 Beta 로 겪어...
-
GOM Player(TV) for Mac 베타 출시 기념으로 뜬금없는 Mac OS X 팁 하나 소개. 곰플레이어를 설치한 후 동영상 파일을 더블클릭하면 아마도 다른 동영상 플레이어가 뜰 것이다. 이 플레이어 대신 곰플레이어가 뜨게 하고 싶다면 어떻게 ...
Tags
Blog Archive
-
▼
2011
(273)
-
▼
2월
(39)
- 커맨드키(애플키)의 존재의 정당성!??
- MacPorts 기본 사용법 정리
- [Vim] Vim 설정 파일(vimrc) 및 플러그인 공유
- [iOS/Three20] TTNavigator with UITabBarController
- [iOS/Three20] TTTableViewController 의 기본
- [iOS/Three20] JSON Parser: extThree20JSON
- [iOS/Three20] TTNavigator 기초
- [iOS/Three20] Add to Project
- [Vim] ucs-bom, BOM(Byte Order Mark)
- [Emacs] Emacs 설정 파일 재로딩: reload-dotemacs
- [Emacs] anything.el
- [Python] Regular Expression API (정규표현식 API 기본)
- [Python] Directory(Folder) / File 목록 다루기
- SimpleNote + SimpleNote App + MarkDown으로 글 쓰기
- [Python] Dictionary 기본
- [Django] Unit Test 기본 정보
- [Python] 가끔 저지른 실수들
- [Vim] 윈도우에서 UTF-8을 적용하면 한글메시지가 깨지더라
- [Vim] OS 별 Vim 설정을 분리하기(?)
- [Vim] CTags를 이용한 코드 탐색에 관하여
- [Vim] Auto Word-Completion에 관한 설정
- [Vim] Configuration to Edit Multiple Files
- [Util] screen 기본 사용법 메모
- [Django] Query 명령어 (일부만) 메모
- [Vim] Plugin: snipMate - TextMate-style snippets f...
- [Vim] Plugin: FuzzyFinder
- [Java] Python의 string.split()은 어떻게?
- [Android/Java] Run shell command
- 폭풍 업데이트!
- [Python] struct 와 padding 에 대한 잡설
- SIGSEGV 란 용어에 대해
- [Django] 500 Error Page
- Mail User Agent에서는 iframe를 배척하는 걸까 (잡설)
- [Python] Log Detailed Exception
- [Python] Send mail attached HTML via sendmail
- [Python] Auto-Machine(?) APIs
- [Python] Logging
- [Python] Unicode/UTF-8
- [Django] Multiple Unittest Files
-
▼
2월
(39)
돼서
답글삭제