맥 OS X에서 숨김파일 보기 설정은 기본적으로 off이다. 숨김파일을 보려면 터미널에서 다음을 입력하고 Finder를 강제로 재시작하면 된다.
defaults write com.apple.Finder AppleShowAllFiles YES
만약 원래 상태로 돌리려면
defaults write com.apple.Finder AppleShowAllFiles NO
맥 OS X에서 숨김파일 보기 설정은 기본적으로 off이다. 숨김파일을 보려면 터미널에서 다음을 입력하고 Finder를 강제로 재시작하면 된다.
defaults write com.apple.Finder AppleShowAllFiles YES
만약 원래 상태로 돌리려면
defaults write com.apple.Finder AppleShowAllFiles NO
작년 말에 Parallax Activity board에 W5500 드라이버를 포팅을 했다. 오늘은 관련된 예제 프로그램들을 모두 포팅해서 github에 올렸다. 이중 흥미로운 것은 Html 5 지원 Webserver인데, 브라우저에서 실시간으로 변동되는 데이터를 그래프로 보여주는 응용이다.
At the end of last year I ported the W5500 driver on the Parallax Activity board. Today, I ported all the related network example and posted on my github. Most interesting example is the Html 5 Webserver showing the real time data in the graph.
2013년 10월에 인텔 갈릴레오 보드와 Arduino tre보드에 대한 포스팅을 하면서, 아두이노의 2가지 로고 프로그램인 Arduino Certified와 Arduino at Heart에 대한 얘기를 했었다.
아두이노에서는 Arduino Community를 위해서 자유롭게 사용할 수 있는 아두이노 커뮤니티 로고를 오픈했다. Arduino at Heart가 제품을 위한 것이라면 이것은 커뮤니티를 위한 것이다.
The Arduino Logo is a Trademark and can only be used by Arduino on products, websites and publications.
As our community is big and growing fast we are starting a series of initiatives to create the opportunity of different levels of engagement and participation. (see also “Arduino at Heart”)
We want to make sure people can identify projects, initiatives and activities coming directly from Arduino but also what comes from the passionate community around the globe, self-organizing local activities and/or online content focused on Arduino.
이 로고는 각 커뮤니티의 이름을 넣을 수 있는 공간이 있는데 여기에 이름을 넣어서 사용이 가능하다. 즉
The customised logo can be used on:
- Google+
- Blog
- Meetup
- or any public platform you are using to self-organize and communicate
or any type of self-organized offline promotional material around your Arduino local community, for example:
- flyer
- poster
- badge
- tshirt
- gadgets
하지만 제약사항은
The Arduino Community Logo can NOT be used on products that are sold commercially and in no case on electronic boards (also non commercial).
로고의 다운로드 및 관련자료: http://arduino.cc/en/Trademark/CommunityLogo
TCP, UDP의 포트 넘버 0~1023번까지는 Well-Known Port로 불리우며 IANA에서 TCP 및 UDP 포트넘버의 일부이다. 일반적으로 포트 번호는 다음과 같이 세 가지로 나눌 수 있다.
더 자세한 정보: http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers#cite_note-IANA-1
따라서 응용프로그램에서 다른 포트와 충돌을 일으키지않고 사용을 하려면 49152 ~ 65535사이의 포트를 사용을 한다. 만약 Registered Port에 등록을 하려면 아래 주소에서 신청을 하면 되는데, IANA에서 심사후 등록여부를 결정한다고 한다. http://www.iana.org/cgi-bin/usr-port-number.pl
Wi-Fi Direct가 무엇인지를 알기쉽게 나타내는 동영상
그럼 Wi-Fi Direct와 기존 ad-hoc은 어떻게 다른가?
Wi-Fi Direct is not the same as ad-hoc networking: The most significant difference between traditional ad-hoc wireless networking (traditional peer-to-peer networking) and Wi-Fi Direct is security. In Windows ad-hoc networks, the highest level of security supported is WEP in mixed client environments (Windows 7 will support WPA2 provided all adapters support it, as well). Wi-Fi Direct, as mentioned, supports WPA2. Another difference, Wi-Fi Direct devices can also simultaneously connect to existing wireless networks. More granular control and better discovery of devices also differentiate Wi-Fi Direct from ad-hoc networking
출처: http://www.pcmag.com/article2/0,2817,2371413,00.asp
참고로 요즘 Bluetooth Smart라고 불리는 Bluetooth 4.0 (Low Energy Technology)에 대한 간단한 스펙은…
즉 물리적으로 누설전류가 적은 로직셀, 최적화된 게이트 수를 통해 성능이 좋은 칩으로 슬립모드를 제공하므로 저전력이 가능하다.
관련자료 다운로드 [wpdm_file id=10]
ARMv6-M 아키텍처에서는 쓰레드 모드와 핸들러 모드가 거의 같다. 유일한 차이는 쓰레드 모드에서는 CONTROL이라는 특별 레지스터의 설정으로 shadow된 스텍포인터를 사용한다는 것이다.
로드 스토어 아키텍쳐: 메모리에 있는 데이터를 처리하기 위해 이 데이터는 메모리로 부터 레지스터 뱅크의 레지스터에 옮겨져서 내부 프로세서에 의해 처리되고, 이것이 다시 메모리에 쓰여진다.
Cortex-M0는 13개의 32비트 범용 레지스터와 몇개의 특별(special)레지스터를 가진다.
범용 레지스터이며, 대부분의 16비트 Thumb 명령어들은 R0-R7, 하위(Low)레지스터만 액세스 가능하다. 이 레지스터들은 리셋시에 초기값이 정해져 있지 않다.
2개의 스텍포인터가 존재하며, Push, Pop은 32비트 명령이기 때문에 스텍포인터는 항상 32비트의 최하위 2 비트는 항상 0이다.
-. MSP (SP_main) : 메인 스텍 포인터 – 리셋시에 사용되는 기본 설정 스텍포인터이며, 익셉션 핸들러가 실행될 때도 사용이 됨, 초기값은 스타트업 동작시 벡터테이블에서 처음 32비트 워드를 가져온다.
-. PSP (SP_process) : 프로세스 스텍 포인터 – 쓰레드 모드(익셉션을 처리하지 않을 때)에서만 사용됨, 초기값이 정해지지 않음.
함수 호출 또는 서브루틴의 복귀주소를 저장하기 위해 사용이 된다.
읽기시에는 파이프라인설계 특성 때문에 현재 명령어 주소 + 4값이 읽혀진다.
이 레지스터는 다음 3개의 레지스터들로 구성이 된다.
-. Application PSR (APSR) : 조건 분기를 위해 N(음수), Z(제로), C(캐리 또는 바로우), V(오버플로우)
-. Interrupt PSR (IPSR) : 현재 실행중인 ISR(인터럽트 서비스 루틴)의 번호를 표시한다.
-. Execution PSR (EPSR) : Cortex-M0에서 T비트는 항상 1 (Thumb 상태를 표시), 만약 이 비트가 0이면 Hard Fault 익셉션이 발생한 것이다.
이 세개의 레지스터는 xPSR 라 불리는 하나의 레지스터를 통해 액세스 된다.
PRIMASK를 설정하면 NMI나 Hard Fault 익셉션을 제외한 모든 인터럽트를 차단한다.
리셋이 된 후(Active stack pointer = 0)에는 MSP가 사용이되지만 , 쓰레드 모드에서 Active stack pointer가 1로 되면 PSP가 선택이 된다. 간단한 응용에서는 MSP만 사용이 되지만 OS가 사용이 될 경우 PSP가 사용이 되는 데 이것은 빠른 Context switching을 위한 것이다. MSP의 초기값은 프로그램 메모리의 시작 부분에 저장이 되지만 PSP의 초기값은 정해지지 않으며, 사용하기전에 프로그램에 의해 초기화가 되야 한다.
Halt mode debug, stepping, register access를 제공하고, BPU(Breakpoint Unit), DWT(Data Watch point)같은 디버그 기능을 제공한다.JTAG 연결(nTRST, TCK, TDI, TMS, TDP등 5핀 사용)과 Serial-Wire 연결(Serial Write Clock, Serial Write Data등 2핀 사용)은 동일한 컨넥터를 사용이 가능하다. 즉 TCK와 Serial Write Clock이 공유되고, TMS와 Serial Write Data핀이 공유되며 나머지는 NC이다.
프로세서가 리셋이 되면 다음과 같은 순서로 동작을 한다.
1. 0x00000000 번지에 저장이 되어 있는 MSP의 초기값을 읽는다. MSP의 초기값 = 스텍의 시작 번지
2. 0x00000004 번지에 저장이 되어 있는 리셋 벡터를 읽는다.
3. 리셋 벡터에 저장된 번지의 명령어를 패치한다.
만약 부트코드가 0x000000C0 번지부터 시작을 하면, Thumb 코드임을 나타내기 위하여 최하위 비트를 1로 설정한 값이 리셋 벡터에 저장이 되어 있어야 한다.
구글 검색을 하다보면 내가 검색한 검색어의 결과 숫자 및 시간이 다음과 같이 나온다.
검색결과 약 565,000개 (0.28초)
그리고 한 페이지당 10개씩 결과가 나오며 아래 그림과 같은 페이지가 표시된다.
검색 결과가 약 565,000이니 56,500개의 페이지가 나와야 한다. 하지만 페이지를 클릭해서 계속 가다보면 다음과 같은 메세지를 만난다.
관련성이 가장 높은 결과를 표시하기 위해 이미 표시된 226개와 매우 유사한 일부 항목을 생략했습니다.
원하시면 생략된 결과를 포함하여 다시 검색하실 수 있습니다.
생략된 결과를 포함하여 다시 검색을 하면 페이지가 늘어난다. 하지만 56,500페이지까지 가지 않고, 90페이지에서 더이상 다음 페이지를 얻을 수 없다.
이렇게 나오는 원인을 찾아보니 구글에서 다음과 같은 설명이 나온다.
Google search result count
When you perform a search, the results are often displayed with the information: About XXXX results (X seconds).
Google’s calculation of the total number of search results is an estimate. We understand that a ballpark figure is valuable, and by providing an estimate rather than an exact account, we can return quality search results faster.
In addition, when you click on the next page of search results, the total number of search results can change. Google’s search index is constantly changing, and your second search results page may come from a slightly different version of the index than the first page.
즉 검색 결과 숫자는 정확한 숫자가 아니라 추정된 숫자일뿐이다.
ARM사는 Acorn Computer Group, Apple 컴퓨터, VLSI Technology의 합작투자회사로 1990년에 Advanced RISC Machine Ltd라는 이름으로 설립