[Linux][Kernel] preempt_disable(), preemption 상세 분석
By Guillermo Austin Kim | 2017년 12월 10일 |
저번 시간에 preempt_disable() 함수 호출로 커널 패닉이 일어나는 문제가 있었는데요.이 매크로 함수와 preemption의 관계에 대해서 좀 더 알아보고자 해요. preemption은 리눅스 커널 핵심 개념 중의 핵심이죠. preempt_disable() 함수를 호출하면 스택 주소를 꺼내와서, current_thread_info에 있는 preempt_count에 1을 더하는 짓만 하거든요. 그럼 current_thread_info의 preempt_count를 어떻게 접근하냐구요?어떤 프로그램이 돌던 스택 주소를 접근하면 해당 current_thread_info를 가져올 수 있어요.static inline struct thread_info *current_thread_info(void){ r
HP 255 G7-6WW80PA 노트북에 리눅스 설치
By 반달가면 | 2019년 6월 15일 |
얼마전에 HP 255 G7-6WW80PA 노트북을 구입했다. AMD 라이젠 APU를 탑재한 제품이다. 사양은 대략 아래와 같다. AMD 라이젠(Ryzen) 3 2200U 듀얼코어 APU 4GB RAM 256GB SSD 윈도우10을 쓸 것인가 리눅스를 쓸 것인가 잠깐 고민하다가, 무료라는 점 때문에 리눅스를 설치해 보기로 했다. 후보로 생각한 배포판은 리눅스 민트 19.1 XFCE와 MX 리눅스 18.3. 리눅스 iso 이미지를 USB 메모리에 옮겨서 부팅하기 위해 YUMI 최신 버전을 다운로드해서 활용했다. YUMI에 대한 내용은 이전 게시물을 참고하자. 여기로. HP 255 G7 노트북을 부팅할 때 esc키를 누르면 메뉴가 나오는데, 여기서 F10을 눌러 바이오스(BIOS)로
[Mac, Linux] paste 명령으로 rename 용 sh 스크립트 작성해 보기
By 지훈현서 | 2020년 5월 12일 |
다음과 같은 100여개의 이미지 파일이 있었습니다. 01-0010.png01-0020.png01-0030.png...01-1000.png 이 파일을 모두02-0010.png02-0020.png02-0030.png...02-1000.png 이라고 이름을 바꾸고 싶은데요, 저는 손이 게을러서 노가다를 못 뛰어요.그래서 다음과 같이 작업했습니다. $ ls *.png > foo.sh그러면 foo.sh 에는 한라인에 하나의 파일이 들어있게 됩니다. 이제 bar.sh 라고 foo.sh를 복사해 줍니다. $ cp foo.sh bar.sh 그리고 vi로 bar.sh 를 열어,다음 ex 명령어를 줍니다. : %s/^01/02/g 그러면 01로 시작되는 것을 모두 02 로 변경하였습니다. 이제는 pa