- 0x0000007b
- 2차세계대전
- 3.20해킹
- 4대강
- 502 error
- 53빌딩
- 7840hs
- 88체육관 수영장
- ABI
- abortive close
- abortive shutdown
- AHCI
- akmods
- ALC1220
- alma linux
- alternatives
- AM4 메인보드
- AMD
- amd 7840hs
- amd 그래픽 게임용
- amd 내장 그래픽 최적화
- anonymous file
- API
- apple.com
- APT
- apt-get
- Armagnac
- Asrock
- ASTALIFT
- audacious player
- Today / Yesterday
- /
- Total
목록저술 관련 (19)
Linux Programmer
크롬(chrome) 브라우저에는 vimium이라는 확장기능이 있어서 마우스를 쓰지 않고도 vim 명령어 키를 이용해서 이동이나 여러가지 기능을 할 수 있다. 크롬에서 설치 및 사용법은 이전에 써둔 글이 있으니 아래 링크를 참고하자. vimium (구글 크롬 vim 단축키 플러그인) : https://sunyzero.tistory.com/178 맥북에서 쓰는 사파리 브라우저에도 vimium과 비슷한 vimari 확장기능이 있어서 이를 설치하면 똑같이 사용할 수 있다. 사이트 페이지는 아래 링크를 참고. vimari : https://github.com/televator-apps/vimari televator-apps/vimari Safari port of vimium. Contribute to televa..
리눅스 시스템 프로그래밍을 배울때 꼭 알아야 할 사전 지식, 혹은 체크 항목 리눅스 시스템 프로그래밍을 배울때는 다음과 같은 항목을 미리 체크해보고, 방향과 교재, 항목을 체크해봐야 한다. 만일 방향을 잘못 잡으면 처음부터 잘못된 길을 갈 수 있으니 공부를 시작하기 전에 최소한 이 정도는 체크해보는 것이 좋다. 1. 어떤 국제 표준에 맞춰서 배울것인가? 리눅스(Linux)는 기본적으로 UNIX standard을 준수한다. 따라서 UNIX 표준과의 호환성을 염두에 둔다면 어떤 표준 레벨에 맞춰서 배울 것인지를 결정해야 한다. 유닉스 표준은 다음과 같은 것들이 있다.[1] System V (SysV) Svr4 Svr42 43BSD (4.3 BSD) POSIX (POSIX.1b, POSIX.1c, POSIX...
Advanced 리눅스 시스템 네트워크 프로그래밍 3판 오탈자 정오표 (2019.09.09 버전) * 최근 업데이트 목록은 맨 아래의 history를 참고해 주시기 바랍니다. * 변경점에 대해서 쉽게 찾아보실 수 있도록 글자 배경색을 오렌지 색으로 표시해두었습니다. * 최신의 예제 소스 코드는 http://sunyzero.tistory.com/242 에서 다운받으시기 바랍니다. Chapter 2. 파일 처리 * p.80 코드 2.2의 13행 : 오타 수정전 dprintf(fd, "PID[%d] Low lovel file handle\n", getpid()); 수정후 dprintf(fd, "PID[%d] Low level file handle\n", getpid()); Chapter 4. 메모리 * P.1..
보호되어 있는 글입니다.
Advanced 리눅스 시스템 네트워크 프로그래밍 3판 (2016년 4월 출간) 예제 소스 코드 * 예제 소스 코드 파일 : (2018년 2월 6일 버전) * 압축을 풀면 하위 디렉토리가 생성됩니다. (소스 코드는 xz로 압축되었습니다. tar의 대문자 J 옵션으로 풀 수 있습니다. 아래 명령어를 참고하세요.) 압축 해제 명령 : tar xfJ alsp_3rd_20180206.tar.xz* 생성된 하위 디렉토리에서 make를 명령하면 하위 모든 예제가 컴파일 됩니다.* make clean을 하면 하위 모든 컴파일된 예제의 바이너리가 청소(삭제)됩니다. * 목차 CHAPTER 00 들어가기 전에헤더 파일과 묵시적 선언Feature test macro와 표준유닉스 역사와 표준안, 용어 및 정의 CHAPTER..
* 이 글은 페도라 23 버전에서 제공되는 vim 플러그인 패키지를 이용하여 Vundle.vim 관리 플러그인을 설치하는 방법을 다룬다. 기존의 Vundle.vim 설치 방법과 다른 점은 RPM 패키지로 제공되는 플러그인을 먼저 설치하고 Vundle.vim에서는 따로 플러그인을 중복 설치하지 않도록 한 것이다.(이 글을 쓰는 2016년 3월기준으로 페도라 23이 가장 최신 버전이다.) vim powerline이 뭔지 모르겠다면 2014년도에 쓴 글(링크)을 참고하자. * 목차1. vim과 vim 플러그인 패키지 설치2. Vundle.vim의 설치3. powerline의 설치4. jellybeans 컬러스키마 설치 1. vim과 vim 플러그인 패키지 설치Fedora 22부터 DNF 패키지 관리자가 YUM..
vim quickfix 기능 vim에는 컴파일 에러 메시지를 빠르게 수정할 수 있도록 도와주는 기능이 있습니다. 이를 quickfix라고 부르는데, 개발자들이 좋아하는 기능입니다. vim의 quickfix는 make 명령어와 연동되어 사용되며 :mak 혹은 :mak %< 라고 치면 현재 디렉터리나 편집중인 코드를 빌드하면서 에러메시지를 수집합니다. 아래는 quickfix list의 기능을 보여주는 스크린샷입니다. quickfix command:mak [make argv ] [ make target ] 에러 발생시 해당 라인으로 자동 이동을 해주고 컴파일 에러 메시지를 보여주는 창을 보여줄 수 있습니다. 에러 메시지를 보여주는 창에서 각각의 에러사이를 이동할 수도 있습니다. 손에 잡히는 vim 을 공부하신..
손에 잡히는 vim - 강의용 교안 vim은 Bill Joy가 개발한 vi 에디터의 발전된 형태입니다. (vim = vi improved)리눅스나 유닉스 사용자라면 필수로 알아야만 하는 에디터입니다. vim 에디터 강의용으로 작성되었으며 (PDF, PPTX) 형식입니다. 출처표시에 비상업적용도로 재가공, 재배포 등이 가능합니다. * 히스토리2014-11-07 교본 업로드
awk는 "패턴 검색과 처리언어"로서 독자적인 처리 문법과 언어 구성을 갖춘 툴이다. 문자열을 해석, 자르기, 계산, 정규표현식(REGEX) 등등 다양한 기능을 제공하며, 속도도 훌륭하다. 따라서 대부분의 UNIX, Linux, OSX에서 많이 사용되며, 유능한 프로그래머, 시스템 관리자라면 필수적으로 다루는 유틸리티이다. 본인이 속한 증권업계에서는 데이터나 로그를 분석, 전처리, 후처리 가공을 하는 용도로도 많이 사용한다. 특히 grep, sed는 간단한 문자열 치환이나 삭제 정도의 처리만 가능한데 비해 awk는 문자열이나 패턴을 숫자로 파싱하여 계산하는 작업을 지원한다. awk의 장점은 다음과 같다.숫자(정수, 실수)를 지원한다.삼각함수, 지수, 로그, 제곱근, 랜덤변수 등의 수학적 기능을 제공한다...
정규표현식 (Regular Expression - REGEX) 강의 발표 자료입니다. * 정규표현식은 문자열 패턴을 찾거나 수정하는데 사용되는 표준 입니다. C, C++, 쉘 프로그래밍, perl, python, java, ruby, 비주얼베이직, C# 등 거의 대부분의 언어가 지원하고 있으며 vi, vim, ultra editor등 다수의 에디터에서도 지원하고 있습니다. 아래와 같은 패턴 표현식이 정규표현식의 대표적인 예입니다. EBNF 표기법을 배우셨다면 어떤 형태인지 쉽게 인지할 수 있습니다.a.cdef? [a-zA-Z]+ .*boy (caret|dalar) \(.*/\)[^/]* ^Do.*\?$ http://\([a-zA-Z0-9.-]\)/.* http://.*\?(.*) 정규표현식의 패턴을 카테..
이 글은 2014년도에 쓰여진 글로서 CentOS 6.4 에서 설치했던 글이다. CentOS 7.1까지는 동일한 방법으로 설치할 수 있지만 Fedora 22 이후라면 좀 구식의 방법이다. Fedora22 이후의 버전이라면 2016년에 포스팅한 "Fedora22에서 vim 플러그인 관리 Vundle.vim" 글을 참고하라. 1. Vundle.vim이란? vim에서 plugins의 설치, 삭제를 도와주는 플러그인이다. Vundle.vim이 없이 vim plugin을 설치하려면 직접 다운로드를 받고 적절한 위치에 복사해야 한다. 하지만 이 과정이 생각보다 귀찮다. 그래서 리눅스의 패키지 관리자들처럼 플러그인의 이름이나 위치만 적어주면, 자동으로 다운로드를 한 뒤에 설치까지 해주는 기능이 탄생했는데, 대표적으로..
vimium은 구글 크롬의 플러그인이다. 기능은 vim의 단축키 명령어를 웹브라우저에서 사용할 수 있도록 해주는 기능이다. vim에 익숙한 사람이라면 마우스를 사용하는 것보다 훨씬 편리할 것이다. vimium 플러그인 설치가 끝나면 물음표(?)를 눌러보면 아래 그림처럼 단축 명령어가 표시된다. (대소문자 주의!) vimium의 단축키는 vim의 normal mode에서 사용하는 명령어와 거의 같기 때문에 쉽게 익숙해질 수 있다. 자주 쓰이는 명령어 몇 개만 살펴보도록 하자. (간혹 명령어 입력이 잘 안될 때는 vim에서 normal mode로 진입했던 것처럼 ESC 한번 눌러주자.) 1. 스크롤 관련 명령어 행단위 스크롤 j (아래로), k (위로) 반 페이지 스크롤 d (아래로), u (위로) 처음, ..
현재 vim-powerline보다는 vim-airline이 좀 더 괜찮습니다. 저도 현재는 vim-airline을 사용하고 있습니다. 설치 방법은 비슷합니다.(왜냐하면 vim-powerline으로부터 파생되었기 때문입니다.) - 2014.06.15 fedora22 부터는 RPM 패키지로 제공되므로 RPM 패키지로 설치하는 방법을 참고하기 바랍니다. - 2016.03.13 - "페도라 23에서 vim powerline 설치하기" http://sunyzero.tistory.com/241 vim-powerline은 하단의 상태바(status bar)를 예쁘게 꾸며주는 플러그인이다. powerline을 사용하면 vim의 일반 모드, 입력 모드와 같이 모드가 바뀔 때 색상을 다르게 표시해줘서 가독성을 높여준다. ..
Advanced 리눅스 시스템 네트워크 프로그래밍 오탈자 정오표(최근 업데이트 목록은 맨 아래의 history를 참고해 주시기 바랍니다.) * p.126 3번째 문단 수정전 수정후 posix_madvise는 addr부터 len까지의 메모리 공간에 대해 ...생략... advise에 사용 가능한 힌트는 표 4.5에 정리해보았다. posix_madvise는 addr부터 len까지의 메모리 공간에 대해 ...생략... advise에 사용 가능한 힌트는 표 5.5에 정리해보았다. * p.156 4번째 문단 수정전 수정후 이 기능은 기존 세마포어와는 역으로 작동하여 세마포어 값이 0이면 깨어나고 양수면 잠복하게 된다. 이런 다양한 기능 덕분에 ISI 세마포어는 아직도 많이 사용되는 기능이다. 이 기능은 기존 세마..
Advanced 리눅스 시스템 네트워크 프로그래밍 (2nd Edition) 예제 소스 코드 예제 소스 코드 파일 : (2014년 8월 16일 수정판) * 압축을 풀면 하위 디렉토리가 생성됩니다. * 생성된 하위 디렉토리에서 make를 명령하면 하위 모든 예제가 컴파일 됩니다. * make clean을 하면 하위 모든 컴파일된 예제의 바이너리가 청소(삭제)됩니다. 2014-08-1610장 리얼타임 확장 : aio_list.c aio_list_sig.c에서 치명적인 버그가 발견되어 수정되었습니다. 자세한 내용은 정오표에 업데이트 될 것이니 참고하시기 바랍니다. * 2판은 약 200여 페이지가 새로 추가되어 부득이하게 책 무게가 늘었습니다. 또한 기존 내용중에서도 수정, 보완된 것으로 인해 4~50% 정도가 ..
원본 이미지 출처 : 손에 잡히는 vim 인사이트 출판사 원본 이미지 크기 : 3472x2546 , 2710x1751"손에 잡히는 vim" 책 맨 뒤에 있는 vim 키맵 단축키 모음입니다.(인터넷에 돌아다니는 이미지를 인사이트에서 예쁘게 재편집한 것입니다.) 인사이트 출판사에서 제작한 원본 이미지의 바탕이 아름다운 블랙 바탕이라 출력, 복사할 때 토너 범벅이 됩니다. 그래서 옅은 회색, 흰색으로 변경한 이미지를 올려둡니다. (인사이트 출판사에 올려진 블랙 바탕의 이미지에는 오타가 있으니 각 그림 파일의 수정 내역을 참고하시기 바랍니다)1. 명령어 단축키📌 그림 파일의 수정내역2013.01.07 숫자 0과 닫힌 소괄호")"의 오류 수정함 (zelon님)2024.12.03 원본 그림 파일 재업로드 2. 이..
우리가 사용하는 수 많은 에디터들 중에 가장 좋은 에디터란 어떤 것일까? 하지만 이런 질문은 좀 잘못된 질문이다. 왜냐하면 가장 좋은 에디터라는 것은 특정 분야에 따라서 달라지기 때문이다. 그렇다면 이번에는 질문을 바꿔서 general하게 사용할 수 있는 2위의 쓸만한 에디터는 무엇일까? 이에 대한 답으로 위의 4컷 만화가 생각난다. 이는 vim.org에 있는 만화인데, 너무 심플하지도 않고 너무 무겁지도 않은 에디터가 좋다는 것을 보여주고 있다. 개인적으로 2위의 쓸만한 에디터가 갖춰야 하는 조건부터 나열해보자.(이건 개인적인 생각이다. 하지만 많은 동료들도 공감했던 이야기이다.) 1) 가벼워야 한다. 2) 많은 플랫폼에 포팅되어 있어야만 한다. 3) 텍스트 환경에서도 가능해야 한다. 4) 확장이 가능..
* 개요 taglist (http://www.vim.org/scripts/script.php?script_id=273)는 소스 코드를 분석해주는 vim 플러그인입니다. 이 플러그인은 ctags 기능을 사용하므로 시스템에 필히 ctags가 있어야 합니다. 리눅스나 유닉스 계열은 대부분 ctags가 설치되어있는 경우가 많습니다. 따라서 taglist 플러그인을 설치하는 것이 간단하지만, ctags를 사용하지 않는 윈도계열에서는 ctags를 따로 설치해줘야만 합니다. "손에 잡히는 vim"에서는 이에 대한 부분이 언급되어있지 않았기에 따로 적어두도록 하겠습니다. * 윈도에서 ctags 설치 윈도 계열에서 ctags가 없으면 tagList는 그림처럼 "Taglist: Exuberant ctags (http://..
"손에 잡히는 vim" 책 소개는 출판사 블로그(http://blog.insightbook.co.kr/217)를 참고해주세요. 책에서 오탈자나 내용상의 오류를 발견하시면, 여기에 댓글로 남겨주시거나, 메일로 보내주시면 정리해서 올리도록 하겠습니다. * 오탈자 리스트 (마지막 변경 : 2018년 5월 20일) (페이지 17) Note 부분 오류 부분 정정 후 현재 작업 강제 종료 (디버깅용) 현재 작업 강제 종료 (디버깅용) * 참고 : CTRL-Q는 터미널의 스크롤락 정지(CTRL-S)를 resume하는 기능입니다. (페이지 50) 표 3.7 입력 모드 예 부분 오류 부분 정정 후 :help i_ :help i_CTRL-N (페이지 89) 표 5.4 창 분할 명령어 정리의 vnew 부분 (표의 가장 아랫..