LINUX
Posts
477 postsCharacter Device Driver(캐릭터 디바이스 드라이버) - Overview
캐릭터 디바이스 코드를 보다가 한 가지 의문이 생겼어요.아래 코드는 캐릭터 타입 디바이스의 메이저 번호를 0으로 설정하네요. 어라?이거 잘못된 코드인가? static int pacman_probe(struct platform_device *pdev){ pr_debug("%s: %s version %s\n", __func__, DEVICE_NAME, PACMAN_VERSION); pacman_ctl.dev_num = register_chrdev(0, DEVICE_NAME, &pacman_fops); //<<-- if (pacman_ctl.dev_num < 0) { pr_err("%s: register_chrdev failed\n", __func__);
tty driver - overview
각 시스템 마다 tty driver 타입으로 등록된 디바이스 드라이버를 디버깅해야 할 때가 있어요처음 시스템을 부팅시키거나 tty driver 관련 문제가 나왔을 때 필요하죠. 이럴 때 참고하면 아주 좋은 변수가 있어요. tty_driver랍니다.자, 이렇게 선언되어 있어요. 주석문이 많은 걸 알려주죠.LIST_HEAD(tty_drivers); /* linked list of tty drivers */ tty driver는 tty_register_driver() 함수를 호출하거든요. 그런데 아래 tty_drivers란 링크드 리스트에 등록을 하죠. int tty_register_driver(struct tty_driver *driver){ int error; int i;// ...생략... mu
[Linux][Kernel] 스택 푸쉬(Stack Push) Userspace -> Kernel Spapce
커널에서 어떤 코드던 프로세스가 실행되는 운동장은 스택이에요. 프로그램이 실행되면서 스택에 Push/Pop 동작을 엄청나게 자주하는데요. 예전 실리콘 벨리에서 어떤 스타트업 회사가 기획했던 아이디어라고 하는데요.리눅스 커널 API를 하드웨어로 처리하는 아이디어를 구현하려고 했다고 하네요. 그 아이디어의 근거는 리눅스 커널에서 자주 사용하는 API는 몇 개로 한정되어 있다는 거에요. 그럼 너무 자주 실행되는 함수면 어떤 동작을 자주 할까요?스택 Push/Pop이 겠죠. 그래서 inline을 함수를 쓰는 거에요. inline 함수는 컴파일러가 호출되는 함수 내에 inline 함수를추가하기 때문에 스택 Push/Pop 동작을 줄 일 수 있어요. 대신 inline 함수의 심볼 정보는 찾을 수 없죠. 대부분의
[bash: curl] curl을 이용한 FTP 자동 접속 - 파일명 변경
우선, curl을 이용한 ftp 자동접속 방법의 기본적인 내용(파일 업로드/다운로드/삭제, 디렉토리 생성/삭제 등)은 이전 게시물을 참고하자. 여기로 업로드한 파일, 또는 이미 FTP서버에 존재하는 파일의 이름을 바꾸는 방법이다. FTP에서 이름을 변경하는 절차는 RNFR 명령으로 변경 대상 파일을 지정한 후에, RNTO 명령으로 새로운 이름을 설정하는 형태다. 여기서 파일명은 절대경로를 사용해야 함에 유의. curl의 -Q 옵션으로 이름 변경 명령어를 전달하면 된다. 아래의 예시를 보자. # /my_dir/documents/에 있는 my_file.dat를 my_file.mod.dat로 이름 변경 curl --user ftp_user -Q "RNFR /my_dir/documents/my_f


![[웹툰단행본] 『통제구역관리부』 1권 후기 : 이상한 변칙과 기이한 일들이 일어나는 공간에 대하여](https://img.zoomtrend.com/2026/06/09/1780996474-SE-5eda86fa-0d63-4afd-b8dd-b801879fed52.jpg)
