리눅스 터미널창에서 수동으로 IP주소, 게이트웨이 설정하기
By 반달가면 | 2018년 5월 29일 |
리눅스 배포판들이 대부분 GUI가 잘 되어 있어서 인터넷 설정을 굳이 터미널창에서 작업할 필요는 없을 수도 있지만, 원격에 있는 장비에 ssh 접속을 해야 한다거나 GUI가 없는 서버에서 작업할 경우도 종종 있기에, 정리해 두기로. 우선 현재의 네트워크 설정을 확인하려면 ifconfig를 이용한다. # 현재 사용중인 내트워크 장치(NIC) 목록 및 설정 sudo ifconfig 만약 현재 활성화되어 있지 않은 네트워크 장치 목록까지 다 보고 싶다면 -a 옵션을 추가하자. # 전체 네트워크 카드 목록 및 설정(-a 옵션) sudo ifconfig -a 특정 장치를 활성화 또는 비활성화하려면 up/down 옵션을 이용한다. # eth0 장치 활성화 sudo ifconfig
리눅스에서 파티션의 파일시스템 종류 확인
By 반달가면 | 2023년 2월 8일 |
디스크 빈 공간을 확인하기 위한 df 명령을 이용해서 마운트된 파티션들이 각기 어떤 파일시스템(file system)을 사용하고 있는지 확인할 수 있다. -T 옵션을 이용하면 된다. df -T 리눅스에서 주로 사용하는 파일시스템은 ext4이지만, USB 메모리 등 외장 기기를 연결해서 마운트했을 때 이것들이 어떤 파일시스템인지 확인하고 싶을 때 유용하다. df 명령에 대한 다른 게시물들은 아래의 링크를 참고하자.
[리눅스커널][스케줄링] 컨택스트 스위칭이란 무엇인가
By Guillermo Austin Kim | 2019년 3월 3일 |
컨택스트 스위칭이란 무엇인가컨택스트 스위칭 세부 동작을 알기 위해서 context_switch() 함수를 분석할 필요가 있습니다. context_switch() 함수를 분석하기 전 컨택스트 스위칭의 개념을 소개하겠습니다. 먼저 컨택스트 스위칭이란 용어에 대해서 살펴봅시다. 컨택스트 스위치란 용어는 컨택스트 + 스위치란 단어의 합성어입니다. 컨택스트를 바꾼다는 의미입니다. 여기서 컨택스란 용어는 무슨 뜻일까요? 컨택스트는 프로세스가 실행 중인 그 자체를 의미합니다. 이 표현은 추상적이라 이해하기 어렵습니다. 프로세스 실행 그 자체를 어떻게 표현할까요? 그것은 레지스터 세트입니다. CPU 레지스터 세트가 프로세스 실행 자체를 표현하기 때문입니다. 다음 테이블을 보면서 컨택스트 스위칭에 대한 개념을 알아봅시
[리눅스커널][스케줄링] 유저 프로세스 실행 중 인터럽트 발생으로 선점 스케줄링
By Guillermo Austin Kim | 2019년 2월 9일 |
선점 스케줄링 실행 진입점 중 하나가 인터럽트를 핸들링 후 입니다. 이번 소절에서 유저 프로세스가 실행하던 도중 인터럽트가 발생했을 때 어떤 방식으로 선점 스케줄링(Preemption)이 시작하는지 살펴보겠습니다. 다음 블록 다이어그램을 같이 봅시다. 위 블록 다이어그램은 유저 레벨 프로세스가 실행 도중 선점 스케줄링되는 흐름도입니다.유저 레벨 프로세스 실행 도중 선점 스케줄링은 다음 과정으로 실행합니다. 1. 인터럽트가 발생해서 __irq_usr란 인터럽트 벡터 실행 2. 인터럽트 핸들러 실행으로 인터럽트 핸들링 마무리 3. __irq_usr 레이블에서 ret_to_user_from_irq 레이블 실행 4. 프로세스 struct thread_info 구조체 flags 필드를 점검해서 _TI