iPerf란? iPerf - The TCP, UDP and SCTP network bandwidth measurement tool iPerf - The ultimate speed test tool for TCP, UDP and SCTPTest the limits of your network + Internet neutrality test What is iPerf / iPerf3 ? iPerf3 is a tool for active measurements of the maximum achievable bandwidth on IP networks. It supports tuning of iperf.fr 공식 소개글 The iperf series of tools perform active measurement..
Newtwork 관련 utility ip IP 주소 설정 및 확인 가능 /*설치*/ apt install iproute2 /*IPv6 확인*/ ip -6 addr show /*IPv6 추가*/ ip -6 addr add / dev /*IPv6 제거*/ ip -6 addr del / dev ifconfig 네트워크 인터페이스의 설정 및 정보를 확인 할 수 있다 Ubuntu 18.04 에는 설치가 되어 있지 않다!! Network interface name 은 version 에 따라 다르다 (iperf3 등을 위해 확인 필요) 초기: eth 최근: ens, enp 등 /*설치*/ apt install net-tools /*IP 확인*/ ifconfig /*IPv6 추가*/ ipfconfig inet6 add..
5. Make 빌드 시스템 1 Build - 한번에 .c 로 빌드하지 말고 각각의 obejct 파일을 만들고 링킹해서 실행파일을 만드는 것이 효율적이다!! object 만들기 실행 파일 만들기 Make 자동 빌드 도구!!! Makefile 이 있어야 사용 가능 >> kay-dev.tistory.com Suffix Rules Suffilc Rules (확장자 규칙)은 미리 정의해 놓은 일반화한 기술 파일 항목을 의미한다. Suffix Rules 1 OBJS = test1.o test2.o test3.o CC = gcc #CC = arm-gcc CFLAGS = -g -O0 -Wall # flag for compile LDFLAGS = -static # flag for linker test: ${OBJS} e..
Build - 한번에 .c 로 빌드하지 말고 각각의 obejct 파일을 만들고 링킹해서 실행파일을 만드는 것이 효율적이다!! object 만들기 실행 파일 만들기 Make 자동 빌드 도구!!! Makefile 이 있어야 사용 가능 >> Makefile 을 만들 줄 알아야 한다는 뜻 아래 예시는 빌드 후 파일을 수정했을 때 'make' command 만으로 자동 빌드해준 결과 make name 만 make 해줌 (name 없이 make 해주면 default 가 실행됨 / default는 첫 target) Makefile 만들기 # 첫 target(default) test: test1.o test2.o test3.o #target: prerequisites (만드려는 파일: 만드는데 필요한 의존파일) ech..
Linking 링킹의 역할 Library 연결 (포함X) Address mapping (Embedded 에서는 mapping 까지 고려해야 함) 링킹의 종류 Static Linking 리눅스는 Static Library 를 사용 (lib.a) Linker 가 library 를 통채로 넣는 것 (Embedded or RTOS 등에서 사용) Dynamic Linking 리눅스는 Shared Library 를 사용 (lib.so / shared object) dynamic linking 목적 메모리 낭비를 방지 실행 파일을 만들 때, 링크할 라이브러리 중 일부만 사용한다면 모두 포함해서 컴파일하는 것은 낭비 컴파일할 때는 전체를 넣는 것이 아닌 Linking 할 Library 의 정보만 추가해준다 (direc..
GNU 오픈 개발도구 활용 기법 C 실행파일의 빌드 절차 * 빌드 에러가 발생하면 아래 과정들을 하나씩 확인해서 어떤 문제인지 확인하는데 사용할 수도 있다!! cpp (c preprocessing, c 전처리) #include 등 실제 c 문법이 아닌 부분을 바꿔줌 결과물: .i (전처) 중간확인 방법 gcc -E : 전처리까지만 진행하고 결과 출력 gcc -E > : 전처리까지만 진행하고 에 저장 cc1 (c compiler) C 코드를 assembly 코드로 바꿔줌 결과물: .s 중간확인 방법 gcc -S : 컴파일까지만 진행하고 .s 파일 생성 (전처리는 진행하나 결과는 저장하지 않음) as (assemble) binary를 object 파일을 만듦 (아직 실행할 수는 없음) Assembly lan..
Shell shell 사용 Section 번호 8영역 설명 1 실행 가능한 프로그램 또는 쉘 명렁어 2 시스템 콜 (System Calls) 3 라이브러리 콜 (Libaries Calls) 4 특수 파일 (Specail files) 5 파일 형식과 규칙 (File format & conventions) 6 게임 (Games) 7 개요, 규칙 및 기타 8 슈퍼 유저 및 시스템 관리 명령 9 커널 루팅 (Kernel routines) shell 종류 shell 의 종류 특징 프롬프트 bash Bourne Again shell 최초로 개발된 shell 인 Boure shell 의 변종 리눅스에서 가장 많이 사용되는 IEEE POSIX 호환이면 Boure shell과 호환되는 shell 로 GNU 프로젝트에 의..
운영체제 (Operating System)이란? 시스템 HW + SW (운영체제 + 모든 어플리케이션) 운영체제 시스템 하드웨어를 관리할 뿐 아니라 응용 소프트웨어를 실행하기 위해 하드웨어 추상화 플랫폼과 공통 시스템 서비스를 제공하는 시스템 소프트웨어 입출력과 메모리 할당과 같은 하드웨어 기능의 경우 운영체제는 응용 프로그램과 컴퓨터 하드웨어 사이의 중재 역할을 햄 운영체제의 구성요소 Kernal 사용자 인터페이스 및 시스템 필수 프로그램 기본적인 파일 및 시스템 유틸리티 응용 프로그램 실행을 위한 라이브러리 시스템 설정 파일들 OS 선택 Ubuntu: Embedded System 에 좋음, 무료 CentOS: 무료 RHEL(Red Hat Enterprise Linux): 유료 기본 환경 설정 가상 머..