본문 바로가기

옥탑방주인

튜플(Tuple) 튜플(Tuple)은 두개 이상의 값을 가질 수 있는 컨테이너. 이 안에 있는 값들은 각각 다른 데이터 타입을 가질 수 있다. 먼저 튜플의 한 예제를 들어보겠다. Int Double, String 형의 값을 가지는 튜플을 생성하여 보겠습니다. scala> val test = (5, 5.5, "Test") 튜플은 이렇게 비교적 간단하게 선언할 수 있다. C언어의 Array와 달리 튜플의 순서는 1부터이다. 다른방식으로 튜플을 생성하는 방법은 키(Key)-값(Value) 형식으로 나타낼 수 있다. scala> val y1 = "y1" -> "55.55"y1: (String, String) = (y1,55.55) scala> val y2 = y1._2 -> y1._1v2: (String, String) = (5.. 더보기
Yocto Project Reference manual chap4 설계된것으로 부터, 오픈임베디드 시스템은 BitBake가 다시빌드가 필요하지않다고 결정한다면 모든것은 처음부터 빌드한다. 기본적으로, 처음부터 빌드하는 것은 불필요한 데이터 문제도 없고 깔끔한 빌드가 되므로 매력적이다. 개발자가 hit 문제를 겪을때, 보통 처음부터 다시 빌드하므로 처음부터 상황의 상태를 알 수 있다. 처음부터 이미지를 빌드하는것은 프로세스에서 장점이자 단점일 수 있다. 이전 단락에서 언급했듯이, 처음빌딩하는것은 모든것을 최신 상태로 유지하고 알려진 상태(known state)에서 시작할 수 있다. 그러나, 처음빌드 하는것은 일반적으로 재구성 할 필요가 없다는 것을 다시 빌드하는 것을 의미하느로 훨씬 오래걸린다. 욕토 프로젝트는 추가적인 빌드를 지원하는 공유된 상태의 코드를 구현한다. 공.. 더보기
Kali-linux에서 ifconfig 명령어가 동작하지 않을 시 sudo apt-get install net-tools 를 입력해주면 알아서 설치가 되는데, 설치가 완료되면 ifconfig 명령어가 실행된다 더보기
Yocto Project Reference manual chap3 - 3.5 3.5. BitBake 오픈임베디드 시스템은 이미지를 생성하기 위해 BitBake를 사용한다. General Yocto Project Development Environment figure를 보면 BitBake영역은 몇개의 기능으로 구성되어 있다. 하늘색으로 칠해져 있는 부분(Build system)이 BitBake 영역이다. 3.5.1. Source Fetching recipe을 빌딩하는 첫번째 단계는 소스를 가져와서 언팩하는 것이다. do_fetch 와 do_unpack은 소스파일을 가져와서 work directory에 소스파일을 압축해제 한다. Note모든 파일(예를들어 file:// 같은 경로)은 recipe에 SRC_URI 에서 설정할 수 있고, 오픈임베디드 빌드 시스템은 recipe파일에 검사.. 더보기
스칼라(Scala) 기초 scala > println("Hello World")Hello, World scala > val test = "just Test"test: String = just Test scala > var test1 = "just Test1"test1: String = just Test1 val은 Value의 약자로 불변(immutable)의 타입을 갖는 저장 단위이다.var은 Variable의 약자로 데이터를 재할당 할 수 있다. scala > val test = "Test"error : reassignment to val test = "Test" scala > var test1 = "Test"test1: String = "Test" 리터럴(literal) : 스칼라에서 리터럴은 텍스트"Test", 234234.. 더보기
Yocto Project ref-manual chapter3 3.1. User Configuration 챕터3에서는 Yocto Project development environment에 대해 더 자세히 알아보려고 한다. 아래의 그림은 high level의 개발환경을 표현하고 있다. 이 챕터의 나머지 부분에서는 Yocto Project 개발환경에서의 기본 입력(input), 출력(ouput), 프로세스, 메타데이터를 확장한다. 출처 : http://www.yoctoproject.org/docs/2.3.1/ref-manual/ref-manual.html#sources-dev-environment 일반적인 Yocto Project 개발환경은 여려기능 영역을 포함하고 있다: User configuration: 빌드 프로세스를 제어하는데 사용할 수 있는 Metadata.M.. 더보기
라즈베리파이3(Raspberry Pi3)에 Yocto Project 설치 Raspberry Pi3에 Yocto Project 2.3.1(pyro)버전을 설치하는 방법을 소개하려고 한다.설치하면서 겪었던 시행착오를 함께 적을 예정이다.먼저 Yocto Project pyro 버전을 다운받는 방법을 설명할 예정이다.Yocto Project가 호환하는 linux distribution 는 아래와 같다.UbuntuFedoraopenSUSECentOSDebian그리고, git, tar, python은 아래에 적힌 버전보다 같거나 높아야 호환이 된다. Git 1.8.3.1 or greatertar 1.24 or greaterPython 3.4.0 or greater 먼저 git에서 현재 버전의 Yocto Project를 받는다. $ git clone git://git.yoctoprojec.. 더보기
Yocto Project manual set 1.3.3.1 Downloading a Pre-Built buildtools Tarball 1. *.sh로 되있는 파일을 http://downloads.yoctoproject.org/releases/yocto/yocto-2.3.1/buildtools/. 에서 다운받는다 2. 스크립트를 실행한다.(현 시점 버전으로 예제를 설명하겠다)ex) $ sh x86_64-buildtools-nativesdk-standalone-2.3.1.sh 여기서 문제가 발생하였는데, 스크립트 파일의 사용 권한이 거부됬다고 나왔다. 스크립트 파일에 권한이 없어서 권한을 바꿔주었다.(사진은 777로 주어져 있따)$ chmod 755 x86_64-buildtools-nativesdk-standalone-2.3.1.sh 3. 그러면 디.. 더보기
Spark 실행옵션 옵션 설명 --master MASTER_URL 클러스터 실행 모드에서의 마스터 정보. 'spark://host:port', 'mesos://host:port', 'yarn', 또는 'local' 중 한 형태로 설정 --deploy-mode DEPLOY_MODE드라이버 프로그램을 로컬 컴퓨터(메인 클래스를 실행한 컴퓨터를 의미하며, 일반적으로 클러스터에 포함되지 않음)에서 실행(클라이언트 방식)할 것인지 클러스터 내 서버중 한 대에서 실행(클러스터 방식)할 것인지에 대한 설정(기본값은 클라이언트 방식) --class CLASS_NAME애플리케이션 메인 클래스(예:자바 및 스칼라) --jars JARS드라이버와 익스큐터(executor)의 클래스패스에 등록될 jar 파일 목록. 여러 개일 경우 콤마(,)로 .. 더보기
스칼라 공부 중 메모할 것들 Scala에서 패키지나 클래스에 속한 모든 함수 또는 변수들을 호출하고 싶을때는 *(asterisk) 대신 _(underscore)를 사용한다 ex) def double(x: Int): Int = x * 2val testDouble = double _ 스칼라에서는 모든것을 객체 취급 한다. ex)1 + 5 % 2 더보기