Technical reports



유비쿼터스 컴퓨팅

유비쿼터스 컴퓨팅은 제록스 팰러 앨토 연구센터의 마크 와이저가 제안한 개념이다. 마크 와이저는 이 개념을 그의 논문 “Some Computer Science Issues in Ubiquitous Computing”에서 “사용자가 현실 세계 어디에서나 컴퓨터를 사용한다는 사실을 인식하지 못한 채 사용할 수 있도록 컴퓨터를 진보시키는 방법”이라고 정의하였다. 과거에, 이 개념 또는 이와 유사한 개념들을 언급할 때 우리나라와 일본에서는 “유비쿼터스 컴퓨팅”이라는 용어가, 미국에서는 “퍼베이시브 컴퓨팅”이라는 용어가 주로 사용되었다고 한다. 유럽에서는 “앰비언트 인텔리전스”라는 용어가 주로 사용되었다고 한다. 지금은 공통적으로 사물인터넷(IoT)이라는 용어가 주로 사용된다.


관련 자료



마프 강의 자료 사용법

유비노스 개발 환경 설치

  1. 다음을 참조해 개발 환경을 설치

마이크로프로세서 강의 자료 라이브러리 설치

Note

VSCode에서 “Run build task” 등 실행, 각종 View 선택 방법은 VSCode 활용 팁 참조

  1. 다음을 참조해 VSCode로 유비노스 소스트리 열기
  2. VSCode에서 “make/liblist.json” 파일 파일 열기

    Note

    “library/ubinos/make/liblist.json”이 아니고, “make/liblist.json”을 열어야 한다.

  3. 연 파일의 기존 내용을 모두 지우고 아래 내용을 붙여넣기
    [
        {
            "name": "mp_course_materials",
            "url": "https://github.com/ubinos-edu/mp_course_materials.git",
            "branch_tag_commit": {"type": "branch", "name": "ubinos-main"},
            "description": "Microprocessor course materials"
        }
    ]
    
  4. VSCode에서 “Run build task” 실행 후, 다음 명령을 선택해 “Ubinos library manager”를 실행
    make xmgr
    
  5. “Ubinos library manager” 창이 뜨면 “Hide ubinos default library list” 체크

  6. 다음 라이브러리들을 체크 하고, “Install” 버튼 클릭
    • mp_course_materials

  7. “Install library commands” 창이 뜨면 “Run” 버튼 클릭

  8. “Success” 메시지가 뜨면 “OK” 버튼 클릭

  9. “Install library commands” 창의 “Close” 버튼 클릭, “Ubinos library manager” 창의 “Close” 버튼 클릭을 차례로 클릭


마이크로프로세서 강의 자료 예제 선택, 빌드, 실행 및 디버깅

Note

VSCode에서 “Run build task” 등 실행, 각종 View 선택 방법은 VSCode 활용 팁 참조

  1. 다음을 참조해 VSCode로 유비노스 소스트리 열기
  2. VSCode에서 “Run build task” 실행 후, 다음 명령을 선택해 “Ubinos config selecgtor”를 실행
    make xsel
    
  3. “Ubinos config selecgtor” 창이 뜨면 다음을 선택한 후 Select 버튼을 클릭
    • mp_course_materials project의 mp_course_ex0506_hello_world_3_netduinoplus2_baremetal_qemu

  4. VSCode에서 “Run build task” 실행 후, 다음 명령을 선택해 빌드
    make rebuildd
    
  5. 다음을 참조해 예제 실행 및 디버깅

마이크로프로세서 강의 자료 라이브러리 업데이트

  • 마이크로프로세서 강의 자료와 관련 라이브러리들은 수시로 업데이트되므로, 작업 전에 다음을 참조해 업데이트할 것을 권장한다.


마프 강의 개인용 소스트리 사용법 (윈도우즈)


유비노스 개발 환경 설치

  1. 다음을 참조해 개발 환경을 설치

개인용 소스트리 다운로드 및 개발용 가상환경 생성

개인용 소스트리 다운로드

Note

VSCode에서 “Run build task” 등 실행, 각종 View 선택 방법은 VSCode 활용 팁 참조

  1. 웹브라우저에서 https://github.com 에 접속한한 후, 로그인

  2. 웹브라우저에서 다음 URL에 접속해 자신의 개인용 소스트리에 접근 가능한지 확인
    https://github.com/ubinos-edu/ubiworks_<팀명>_<학번>_<깃허브아이디>
    
    • 예:
      https://github.com/ubinos-edu/ubiworks_mpc2025a_2001000001_slblue
      
    • 팀명
      • 2024년 1학기 경북대학교 마이크로프로세서 강의 수강생: mpc2024a

      • 2025년 1학기 경북대학교 마이크로프로세서 강의 수강생: mpc2025a

  3. 접근 가능하면 다음 과정을 수행하고 그렇지 않으면 관리자에게 접근 권한을 요청

  4. 일반 사용자 권한으로 명령 프롬프트(cmd.exe) 실행

  5. 다음 명령을 실행해 작업용 디렉토리로 이동
    cd C:\MyWorks\ubinos
    
  6. 다음 명령어를 실행해 개인용 소스트리 다운로드
    git clone git@github.com:ubinos-edu/ubiworks_<팀명>_<학번>_<깃허브아이디>.git
    
    • 예:
      git clone git@github.com:ubinos-edu/ubiworks_mpc2025a_2001000001_slblue.git
      
    • 다음과 같은 확인 메시지가 출력되면 yes 를 입력
      • Are you sure you want to continue connecting (yes/no/[fingerprint])?

  7. 다음 명령어를 실행해 다운로드한 개인용 소스트리 디렉토리로 이동
    cd ubiworks_<팀명>_<학번>_<깃허브아이디>
    
    • 예:
      cd ubiworks_mpc2025a_2001000001_slblue
      
  8. 다음 명령어를 실행해 개인용 소스트리 서브모듈 다운로드
    git submodule update --init
    git submodule foreach git switch ubinos-main
    
  9. 명령 프롬프트(cmd.exe) 창 닫기

개발용 가상환경 생성

  1. 일반 사용자 권한으로 명령 프롬프트(cmd.exe) 실행

  2. 다음 명령을 실행해 유비노스 소스트리 make 디렉토리로 이동
    cd C:\MyWorks\ubinos\ubiworks_<팀명>_<학번>_<깃허브아이디>\make
    
    • 예:
      cd C:\MyWorks\ubinos\ubiworks_mpc2025a_2001000001_slblue\make
      
  3. 다음 명령을 실행해 “Ubinos config selecgtor”를 실행
    make xsel
    
  4. “Ubinos config selecgtor” 창이 뜨면 다음을 선택한 후 Select 버튼을 클릭
    • ubinos project의 ubinos_venv

  5. 다음 명령을 실행해 빌드
    make rebuildd
    
  6. 빌드가 정상적으로 완료되면 다름과 같이 가상환경 활성화, 비활성화 명령이 출력됨
    ""
    "* env activate command: "
    "C:\MyWorks\ubinos\ubiworks_<팀명>_<학번>_<깃허브아이디>\output\ubinos_venv\Scripts\activate.bat"
    ""
    "* env deactivate command: "
    "deactivate"
    ""
    
  7. 가상환경 활성화 명령을 실행해 ubinos_venv 활성화
    C:\MyWorks\ubinos\ubiworks_<팀명>_<학번>_<깃허브아이디>\output\ubinos_venv\Scripts\activate.bat
    
    • 예:
      C:\MyWorks\ubinos\ubiworks_mpc2025a_2001000001_slblue\output\ubinos_venv\Scripts\activate.bat
      
    • 위 명령처럼 절대경로로 실행해도 되지만, 아래 명령처럼 상대경로로 실행해도 된다.
      ..\output\ubinos_venv\Scripts\activate.bat
      
  8. 명령 프롬프트(cmd.exe) 창 닫기


VSCode로 개인용 소스트리 열기

  1. 일반 사용자 권한으로 명령 프롬프트(cmd.exe) 실행

  2. 다음 명령을 실행해 개인용 소스트리 make 디렉토리로 이동
    cd C:\MyWorks\ubinos\ubiworks_<팀명>_<학번>_<깃허브아이디>\make
    
    • 예:
      cd C:\MyWorks\ubinos\ubiworks_mpc2025a_2001000001_slblue\make
      
  3. 다음 명령을 실행해 개인용 개발용 가상환경 활성화
    ..\output\ubinos_venv\Scripts\activate.bat
    
  4. 다음 명령을 실행해 VSCode로 개인용 소스트리 열기
    code ..
    

VSCode로 제출용 퀴즈 app 생성, 수정, 빌드, 실행

Note

VSCode에서 “Run build task” 등 실행, 각종 View 선택 방법은 VSCode 활용 팁 참조

  1. VSCode에서 “Run build task” 실행 후, 다음 명령을 선택해 “Ubinos config selecgtor”를 실행
    make xsel
    
  2. “Ubinos config selecgtor” 창이 뜨면 퀴즈 app 구성을 선택한 후 Copy 버튼을 클릭
    • 퀴즈 app 구성 예:
      • mp_course_quiz0701_memset_simple_netduinoplus2_baremetal_qemu

  3. “Ubinos config copier” 창이 뜨면, 오른쪽 아래 앱 이름 입력란을 자신의 학번과 깃허브 아이디를 포함하도록 수정
    • 수정 예:
      • mp_course_quiz0701_memset_simple_2001000001_slblue

    • 그림 3 은 앱 이름 입력 예를 보여준다.

  4. “Ubinos config selecgtor” 창의 “OK” 버튼을 클릭

  5. “Copy succeeded” 메시지가 뜨면 “확인” 버튼을 클릭

  6. 정상적으로 수행이 완료되었다면 “C:MyWorksubinosubiworks_<팀명>_<학번>_<깃허브아이디>app” 아래에 다음과 같은 새 앱 디렉토리와 구성이 생성됨
    • 예:
      • 앱 디렉토리: mp_course_quiz0701_memset_simple_2001000001_slblue

      • 앱 구성: mp_course_quiz0701_memset_simple_2001000001_slblue_baremetal_qemu

  7. 새 앱 디렉토리에 있는 소스 파일을 수정해 퀴즈 앱을 완성
    • 퀴즈에 대한 설명은 앱 디렉토리 내의 readme.txt 파일에 있음

  8. 다음을 참조해 앱을 빌드하고 실행

Example of app name input for the Ubinos config copier

그림 3 Example of app name input for the Ubinos config copier


제출용 퀴즈 app을 github에 올리기

Note

VSCode에서 “Run build task” 등 실행, 각종 View 선택 방법은 VSCode 활용 팁 참조

  1. VSCode에서 “Source control” View를 선택

  2. “Source control” View 상단의 “…”을 클릭한 후 “Repositories”를 체크

  3. “Source control” View의 “Repositories” 창에서 “ubiworks_<팀명>_<학번>_<깃허브아이디>” 선택

  4. “Source control” View의 “Changes” 창에서 github에 올릴 파일들을 클릭해서 선택
    • “Control” 키를 누른 상태에서 클릭하면 여러 파일을 선택할 수 있음

    • 선택 예:
      • app\mp_course_quiz0701_memset_simple_2001000001_slblue\appmain.c

      • app\mp_course_quiz0701_memset_simple_2001000001_slblue\memset_simple.h

      • app\mp_course_quiz0701_memset_simple_2001000001_slblue\memset_simple.S

      • app\mp_course_quiz0701_memset_simple_2001000001_slblue\readme.txt

      • app\mp_course_quiz0701_memset_simple_2001000001_slblue_netduinoplus2_baremetal_qemu.cmake

  5. 우클릭 후 “Stage Changes” 선택

  6. “Source control” View의 “Changes” 창의 “Commit” 버튼 위에 메시지 입력
    • 예:
      quiz0701_memset_simple app 추가
      
  7. “Source control” View의 “Changes” 창의 “Commit” 버튼 클릭
    • Commit 은 로컬 PC에만 저장된다. 아래의 “Sync Changes” 까지 수행해야 깃허브 서버에 올라간다.

  8. “Source control” View의 “Sync Changes” 버튼 클릭

  9. 웹브라우저에서 자신의 개인용 소스트리 URL에 접속
    https://github.com/ubinos-edu/ubiworks_<팀명>_<학번>_<깃허브아이디>
    
    • 예:
      https://github.com/ubinos-edu/ubiworks_mpc2025a_2001000001_slblue
      
  10. Commits 를 선택해 commit 목록을 확인
    • 그림 4 은 깃허브에 올라간 commit 목록을 확인하는 방법을 보여준다.

  11. 확인하고 싶은 Commit을 선택해 해당 commitㅇ이 정상적으로 올라갔는지 확인
    • 그림 5 은 깃허브에 올라간 commit을 확인하는 방법을 보여준다.


How to check commit list on GitHub

그림 4 How to check commit list on GitHub


How to check a commit on GitHub

그림 5 How to check a commit on GitHub



VSCode 활용 팁

단축키

  • “Run build task” 실행
    • 윈도우: “Ctrl + Shift + B”

    • 리눅스: “Ctrl + Shift + B”

  • “Extensions” View 선택
    • 윈도우: “Ctrl + Shift + X”

    • 리눅스: “Ctrl + Shift + X”

  • “Run and Debug” View 선택
    • 윈도우: “Ctrl + Shift + D”

    • 리눅스: “Ctrl + Shift + D”

  • “Source control” View 선택
    • 윈도우: “Ctrl + Shift + G”, “G”

    • 리눅스: “Ctrl + Shift + G”