리눅스에서 문자열에 대한 베이스64 인코딩/디코딩
By 반달가면 | 2018년 1월 24일 |
우선, 파일에 대한 베이스64(base64) 인코딩/디코딩의 예시는 아래와 같다. (이전 게시물을 참고하자. 여기로) # 파일 test.txt를 베이스64 인코딩하여 test.txt.b64로 저장 base64 test.txt > test.txt.b64 # 파일 test.txt.b64의 내용을 베이스64 디코딩하여 화면에 출력 base64 -d test.txt.b64 파일이 아니라 특정 문자열에 대한 베이스64 인코딩/디코딩을 하고 싶다면 파이프(|)를 사용하면 간단하게 할 수 있다. 예를 들어 문자열 "abc"에 대한 베이스64 인코딩은 아래와 같이 하면 된다. # 문자열 abc 베이스64 인코딩 echo "abc" | base64 YWJjCg== 만약 줄바꿈(new
[라즈베리파이] 시스템 콜 - 커널 모드에서 시스템 콜을 어떻게 실행할까?
By Guillermo Austin Kim | 2018년 11월 19일 |
이번 절에서는 커널 공간에서 시스템 콜을 어떻게 실행하는지 살펴보겠습니다.다음 그림 전체 흐름도에서 검은색으로 표시된 부분을 눈여겨봅시다. 위 그림에서 검은색으로 된 부분입니다. 유저 공간에서 소프트웨어 인터럽트를 유발했으니 소프트웨어 인터럽트 벡터인 vector_swi 레이블이 실행합니다. 유저 공간에서 “svc 0x0” 이란 명령어를 실행하면 vector_swi 이란 시스템 콜 처리용 인터럽트 벡터로 프로그램 카운터를 이동하는 것입니다. 유저 공간에서 지정한 시스템 콜 번호는 r7 레지스터에 실려서 옵니다. 이 시스템 콜 번호를 통해 시스템 콜 테이블에 접근한 후 시스템 콜 핸들러로 분기합니다. ARM 프로세서 관점으로 시스템 콜을 실행하면 커널 공간에서 다음과 같은 동작을 수행합니다.1>
[Linux] losof의 사용하는 port를 확인하는 방법
By 멋진넘 | 2017년 1월 2일 |
lsof명령어를 이용하여, 사용하는 port의 프로세스를 확인하는 방법 아래 내용은 10001번 port를 사용하는 프로세스를 찾기 위한 방법이며, java가 프로세스명, 17641은 해당 PID 이다. [root@noon1 ~]# lsof -i:10001 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME java 17641 root 158u IPv6 185366324 TCP mvnoon1:scp-config (LISTEN)
ASUS 팅커보드S(Tinkerboard S) 구입
By 반달가면 | 2021년 4월 22일 |
원래는 라즈베리파이(Raspberry Pi)를 살까 했었으나, SBC(싱글 보드 컴퓨터)가 그 외에도 여러 가지가 있다는 것을 알고 좀 알아보다가 ASUS 팅커보드S(Tinkerboard S)로 골랐다. 팅커보드S는 라즈베리파이와 달리 보드에 16GB eMMC 가 장착되어 있어서 마이크로 SD카드를 추가하지 않아도 된다. (물론 마이크로 SD카드 슬롯도 장착되어 있다) 대략의 사양은 아래와 같다. Rockchip RK3288 SoC: 1.8GH ARM Cortex-A17 쿼드코어 CPU + Mali-T760 GPU 2GB RAM + 16GB eMMC 4x USB 커넥터 1x HDMI 전원 아답터는 5V/3A 규격을 필요로 하는데, 라즈베리파이에 대응하는 전원 아답터가 여러 종류가