Linux 12

우분투 컴퓨터에 텐서플로우 설치 무조건 따라하기 (1) - 그래픽카드 설치

List Description COMMAND OS UBUNTU 22.04.3 LTS lsb_release -a GPU NVIDIA GTX 1650 nvidia-smi CPU Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz lscpu KERNEL 6.3.0-rc3+ uname -r 그래픽카드 드라이버 설치 여부 확인 lspci | grep -i nvidia 설치되어있다면 아래와 같이 보일 것이다. nvidia-smi 실행시 아무것도 뜨지않는다면 Driver 를 설치해야합니다. 아래 링크에서 자신에게 맞는 그래픽 드라이버를 설치합니다. https://www.nvidia.com/Download/index.aspx Download the latest official NVIDIA drive..

TensorFlow 2023.11.06

강력한 리눅스 커널 디버깅 툴 , ftrace 개론 - 작성중-

printk 또는 dump_stack 을 사용하면서 불편하답니다. 저는 많이 안써봤습니다. 그래서 ftrace 를 많이 현업에서도 사용한다고 합니다. 주요 특징은 함수 호출 흐름을 소스코드 수정하지 않고도 보고싶다. 커널의 세부 실행 정보를 출력해줬으면 좋겠다. 1초에 수십번 호출해도 성능에 부담을 주지 않는다. 커널 로그도 함께 본다. 인터럽트, 스케쥴링, 커널 타이머 등의 커널 동작 상세히 추적 함수 필터를 지정하면 지정한 함수를 호출한 함수와 전체 콜 스택까지 출력 함수를 어느 프로세스가 실행하는지 알 수 있다. 함수가 실행된 시각 정보를 알 수 있다. ftrace 로그 활성화해도 시스템 동작에 부하를 거의 주지 않는다. 과연 그럴까 생각들정도로 강력한 것은 사실입니다. How to do confi..

Unix & Linux/ftrace 2022.07.11

리눅스 커널 소스의 구조 ( Linux Kernel Structure )

arch 아키텍처별로 동작하는 커널 코드가 있음 - arm : 32bit 계열 arm 아키텍쳐 - arm64 : 64bit 계열 Arm 아키텍쳐 - x86 : 인텔 x86 아키텍쳐 include 커널 코드 빌드에 필요한 헤더 Documentation 커널 기술문서 kernel 커널의 핵심 코드가 있는 폴더 다음과 같은 하위 디렉토리 irq 인터럽트 관련 sched 스케쥴링 코드 power 커널 파워매니지먼트 locking 커널 동기화 관련코드 printk 커널 콘솔 관련 코드 trace ftrace 관련 코드 위 디렉토리에는 아키텍처와 무관한 커널 공통 코드가 있고, 아키텍쳐 별로 동작하는 커널 코드는 arch/*/kernel 에 있습니다. 라즈비안의 경우 ARMv7 아키텍쳐 관련 코드는 arch/arm..

Unix & Linux/Kernel 2022.07.07

리눅스, 쉘 스크립트 (1) - Hello world

vim 에디트를 통해 파일을 만들어줍니다. vim hello_world.sh 그러면 에디트 화면이 열립니다. 쉘스크립트 언어라는 것을 알려주는 중요한 식별자를 추가하고 아래와 같이 예제 코드를 작성해봅니다. #!/bin/bash #example echo "hello world" 이렇게 작성하고 저장하고 나옵니다. 그리고 실행하면 ( ./hello_world.sh) 당연히 실행이 안됩니다. 기본적으로 파일 생성하면 실행가능한 파일이 아니라고 선언됩니다. 그래서 아래와 같이 실행가능한 파일이라고 변경합니다. chmod 755 hello_world.sh 이렇게 변경해주고 실행하면 hello world 가 출력됨을 확인할 수 있습니다.

Unix & Linux 2021.06.17

( cp ) 리눅스 기본 문법, cp (copy)

option description cp -a archive files cp -f force copy by removing the destination file if needed cp -i interactive - ask before overwrite cp -l link files instead of copy cl -L follow symbolic links cp -n no file overwrite cp -R recursive copy (including hidden files) cp -u update - copy when source is newer than dest cp -v verbose - print informative messages -i : 복사될 파일이 이름이 이미 존재할 경우, 사용자에게..