전체 글: 429개의 글

[서울/양재] 브라운 돈까스

Posted by ironmask84
2017. 9. 27. 22:54 생각과 일상/맛집


4번 째 맛집 포스팅 입니다 ^^

이번엔 서울 양재역 근처에 있는 '브라운 돈까스' 라는 가게인데요.

양재역 주변에 술집은 꽤 많은데 비해 음식점이 많아 보이지는 않았습니다.

그 와중에 오래된 돈까스 집을 하나 발견했어요 ㅎㅎ

1986년 부터라는데 30년이 넘은 전통이 있는 가게네요;;

몰랐는데, 몇몇 체인점도 있었네요 ㅎㅎ

90년대 한창 경양식 레스토랑이 유행했드랬죠~ 그땐 제법 고급 요리였는데..

이제는 일식 돈까스도 많이 들어오고 돈까스 자체가 많이 보급화 되었죠 ㅋㅋ

가게도 리모델링 된 것 같은데, 맛은 깔끔하니 괜찮았습니다.



내외부 사진


 메뉴는 심플하고, 가격도 적당합니다. 


 분위기가 까페와 바를 섞어놓은 것 같고, 약간 고풍스럽습니다. ㅋㅋ 

음식 사진


 피자오븐 돈까스 입니다. 밥은 계속 리필이 되요 ㅎㅎ 


 가장 기본 메뉴인 등심돈까스 입니다. 야채샐러드가 좀 부족한게 아쉽네요~ 



 돈까스도 괜찮았지만, 처음에 나오는 스프가 제일 기억에 남았네요 ㅋㅋ 
 심플해 보이지만, 다른 돈까스집 보다 맛이 좋아서 그런 느낌을 받은듯.. 


위치


 위치는 양제역 8번 출구에서 매우 가까워요 ㅎㅎ 


 

임베디드 리눅스 시스템 스터디

Posted by ironmask84
2017. 9. 26. 23:46 나는 프로그래머다!/Linux



HW를 동작시키는 SW 중에는


OS가 없는 펌웨어를 제외하고,


OS를 탑재시키는 경우에 리눅스를 많이 사용합니다.


C언어 기반이어서 HW 호환성(chip set)이 좋을 뿐아니라, 

오픈소스이기 때문에 로열티없이 사용도 가능하기 때문이죠 :)


하지만, 상용 OS가 아니기에 서비스 지원이 따로 없으므로...

개발자들에게 높은 수준의 개발능력을 요구합니다..

안좋게 말하면, 개발자들이 죽쑤게 된다는 것이죠 ㅜㅜ



저 또한 약 1년 전부터 실무에서 BSP 레벨 개발 업무를 맡게 될 것을 대비하여

리눅스에 대해서 공부를 하려고 했습니다.

http://ironmask.net/297 )


하지만, 개인적 사정으로 8개월 정도 텀이 생기게 되었고...

현재는 라즈베리파이로 개인 스터디를 해보려 하고 있습니다.. ㅋㅋ

http://ironmask.net/349 )


5년 전쯤에 Android Porting & Structure 이란 교육을 받은 적이 있습니다.

회사에서 Android 업무를 늦게나마 (2012년에 받았지만, 안드로이드는 2009년부터 이미 시작되어 왔기에..)

부랴부랴 받았을 때, 리눅스에 대해 잠깐 배운 기억이 있습니다.

Android 도 리눅스 커널을 OS를 사용하기 때문이죠 :)

이 때 교육은 5일짜리 였습니다.


5년 후인 이번주에 임베디드 리눅스 시스템이란 교육을 받고 있는데요.

이 교육도 5일짜리 입니다.

5일로는 방대한 내용의 교육입니다만, 

교육 받는 것도 감지덕지 하면서 최대한 배우려 애를 써봅니다. ㅋㅋ


짧은 지식이지만, 앞으로 계속 정리해가는 차원에서

글 몇개 씨리즈로 올려보겠습니다. ^^


임베디드 시스템 개념 정리 : http://ironmask.net/384







 

컴퓨터 시스템과 임베디드 시스템 개념

Posted by ironmask84
2017. 9. 25. 23:56 나는 프로그래머다!/기초 다지기




임베디드 시스템?

전자제품을 동작시키는 SW와 HW를 통틀어 임베디드 시스템이라고 합니다.

전자제품이란 여러분이 잘 아시는 것처럼, 

전기밥솥, 세탁기, 냉장고 와 같은 가전에서부터 휴대폰, 자동차, 비행기 등 

첨단 전자제품 까지 20세기부터 매우 빠르게 발전해오고 있습니다.

최근엔 아두이노, 라즈베리파이와 같이 간단하게 임베디드 시스템을 

Study 할 수 있는 HW가 보급화되고 있습니다.

저 또한, 요즘 4차산업혁명에 핵심 키워드 중 하나인 IoT관련 부서에서 

업무를 맡게되어 많은 관심을 가지고 있고, 

라즈베리파이 개인 Study도 해보려고 하고 있습니다. 

http://ironmask.net/349


컴퓨터 시스템?

컴퓨터 시스템이라고 하면, 말 그대로 컴퓨터를 이용한 시스템입니다.

일반적으로 기업이나 관공서에서 관리하는 전산실 서버에서부터

기상청과 같이 특수하게 대량의 데이터 분석이 필요한 경우 등 다양하게 구성될 수 있습니다.

그리고 임베디드 시스템 또한, 컴퓨터 시스템 중에 하나입니다.

임베디드 기준으로 컴퓨터 시스템에 포함되는 개념들은 이렇습니다.

* HW

-MicroProcessor (요즘 CPU)

A microprocessor is a computer processor that incorporates the functions of a computer's central processing unit (CPU) on a single integrated circuit (IC),[1] or at most a few integrated circuits.[2] The microprocessor is a multipurpose, programmable device that accepts digital data as input, processes it according to instructions stored in its memory, and provides results as output. Microprocessors contain both combinational logic and sequential digital logic. Microprocessors operate on numbers and symbols represented in the binary numeral system.

ex)STM32, atmega128


좀 더 상세한 내용은 아래를 참조 해주세요.

마이크로프로세서

- 작은 실리콘 칩 위에 트랜지스터를 수천 만 개 집적한 소자

- 마이크로는 매우 작은 크기, 프로세서는 처리기 혹은 CPU를 뜻하므로 마이크로프로세서는 “매우 작은 처리기”를 의미

- 인텔에서 intel 4004라는 최초의 마이크로프로세서 개발(1971년)

 

마이크로프로세서의 2가지 형태

CPU형 마이크로프로세서

- CPU 기능 대부분을 칩 하나에 집적하고, CPU형 마이크로프로세서를 중심으로 ROM, RAM, 입출력장치 등을 추가하여

마이크로컴퓨터를 구성할 수 있다.

단일 칩 마이크로컴퓨터

- 마이크로컴퓨터에 들어가는 모든 부품들을 하나의 반도체 칩에 집적한 것

연산용과 제어용으로 분류하며, 제어용 단일 칩 마이크로컴퓨터를 마이크로 컨트롤러 라고 하고 8051,AVR, PIC 등이 있다.

마이크로프로세서의 분류

​메모리 구성 에 따라

폰 노이만 구조

- 데이터 영역과 프로그램 영역의 물리적인 구분이 없고 버스 크기도 동일

- 데이터와 프로그램 코드를 동일하게 취급하므로 데이터도 프로그램 코드에 함께 들어감

ex) 일반 데스크톱 PC​

하버드 구조

- 프로그램 버스와 데이터 버스가 별도로 있는 것이 특징이며 동시에 액세스가 가능한 방식. 데이터 메모리가 레지스터 파일 형태로 통합 관리

- 레지스터와 메모리간에 상호전송이 필요 없게 되어 명령어 수를 줄이고, 속도를 빠르게 할 수 있음

- 데이터 영역과 프로그램 영역이 물리적으로 구분되어 있고 각 버스의 크기들이 서로 다를 수 있음

- 데이터와 명령어를 분리해서 처리

ex) 8051, PIC, AVR

CMOS 구조

- 소비전력이 매우 적으며, 전달 특성이 우수하고 동작 전압의 범위가 넓음

​명령어 구조 에 따라

CISC(Complex Instruction Set Computer) 구조

- 복합 명령어 셋 컴퓨터’라는 의미를 지니는 방식이며, 대표적으로 인텔의 x86계열 CPU와 펜티엄 4도 이 방식을 사용

- CPU가 처리할 수 있는 명령어를 모두 내장하므로 CPU의 구조가 매우 복잡

- CISC 방식의 장점은 뛰어난 호환성에 있음

- 개인용 컴퓨터인 PC에 많이 사용. 8051은 CISC 방식

RISC(Reduced Instruction Set Computer) 구조

- 축소 명령어 셋 컴퓨터’라는 의미를 지니는 방식이며, 주로 대형컴퓨터나 워크스테이션에 사용

- CPU에 내장된 명령어를 줄여 보다 빠른 처리속도가 특징

- CPU의 구조를 보다 단순화

- 컴파일러에게 많은 짐을(연산과정)을 넘김으로써 CPU 내부 구조를 단순하게 제작

- 복잡한 명령어는 단순한 명령어를 조합해서 사용

프로그램이나 알고리즘을 신속하게 실행하기 위한 목적의 마이크로프로세서는 다양한 입출력 장치를 이용하여 자원을 관리하고 운영하는 장치이다.

마이크로컴퓨터는 마이크로와 컴퓨터가 결합된 용어로 작은 컴퓨터 시스템을 말한다.

마이크로컴퓨터는 작은 휴대용 시스템부터 휴대용 노트북, 스마트폰등 성능에 따라 여러 가지 기기에 이용되고 있다.



-MircoController (CPU를 탑재한 단일칩 형태의 컴퓨터)

A microcontroller is a small computer (SoC) on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory in the form of Ferroelectric RAM, NOR flash or OTP ROM is also often included on chip, as well as a typically small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general purpose applications consisting of various discrete chips..

Microcontrollers are used in automatically controlled products and devices, such as automobile engine control systems, implantable medical devices, remote controls, office machines, appliances, power tools, toys and other embedded systems. By reducing the size and cost compared to a design that uses a separate microprocessor, memory, and input/output devices, microcontrollers make it economical to digitally control even more devices and processes. Mixed signal microcontrollers are common, integrating analog components needed to control non-digital electronic systems.

MCU를 통합시킨것 시킨 것, SOC(System On Chip)


-MicroComputer (일반적인 PC)

A microcomputer is a small, relatively inexpensive computer with a microprocessor as its central processing unit (CPU).[2] It includes a microprocessor, memory, and input/output (I/O) facilities. Microcomputers became popular in the 1970s and 80s with the advent of increasingly powerful microprocessors. The predecessors to these computers, mainframes and minicomputers, were comparatively much larger and more expensive (though indeed present-day mainframes such as the IBM System z machines use one or more custom microprocessors as their CPUs). Many microcomputers (when equipped with a keyboard and screen for input and output) are also personal computers (in the generic sense).[3]

기타 외부 장치( I/O핀 등)을 모듈화 시킨 것

ex)SBC(single Board Computer)


* SW

os를 사용 안한 하위제어

- 펌웨어 firmware

하드웨어와 소프트웨어 중간 http://blog.naver.com/kangusreport/220628959921

In electronic systems and computing, firmware[a] is a type of software that provides control, monitoring and data manipulation of engineered products and systems. Typical examples of devices containing firmware are embedded systems (such as traffic lights, consumer appliances, and digital watches), computers, computer peripherals, mobile phones, and digital cameras. The firmware contained in these devices provides the low-level control program for the device. As of 2013, most firmware can be updated.[2]


os를 사용한 상위제어
- platform 

Computing platform, a framework on which applications may be run

The term computing platform can refer to different abstraction levels, including a certain hardware architecture, an operating system (OS), and runtime libraries.[1] In total it can be said to be the stage on which computer programs can run.


-커널 Kernel(핵심) https://en.wikipedia.org/wiki/Kernel_(operating_system)
예)Linux, Ubuntu(Ubuntu (operating system), a Linux distribution)
Kernel (operating system), the central component of most operating systems(OS)


In computing, the kernel is a computer program that manages input/output requests from software, and translates them into data processing instructions for the central processing unit and other electronic components of a computer. The kernel is a fundamental part of a modern computer's operating system.[1]


To perform useful functions, processes need access to the peripherals connected to the computer, which are controlled by the kernel through device drivers. A device driver is a computer program that enables the operating system to interact with a hardware device.


리눅스는 커널이라는 말이 맞지만, 인터페이스(쉘), 어플리케이션이 있어야 사용가능 하므로 보통
리눅스 = "커널" + "인터페이스" + "어플리케이션"이라고 함
커널은 메모리를 관리하고 디스크를 관리하고, 그 밖으 모든 컴퓨터 자원을 관리하는 메인 프로세스입니다.
이 커널에 명령을 넣어줄 수 있는것이 인터페이스 입니다. 흔히들 쉘 이라고 불리웁니다. 즉 커널 자체만
으로는 입력이 없기 때문에 동작이 의미가 없고 사용자로부터 인터페이스를 통해 입력값을 주면 커널은
거기에대한 동작을 하거나 결과값을 내줍니다. 어플리케이션는 이러한 일련의 동작을 뭉터기로 모아서
커널에 명령을 전달하는 수단이 되겠습니다.

http://m.kin.naver.com/mobile/qna/detail.nhn?d1id=1&dirId=10302&docId=189452439&qb=7Jq07JiB7LK07KCc7JmAIOy7pOuEkCDssKjsnbTsoJA=&enc=utf8&section=kin&rank=1&search_sort=0&spq=0

Framework http://cafe.naver.com/openrt/6527

예)ROS로봇소프트웨어 개발하는데 필요한 것을 지원해주는 것
   GUI 기반의 소프트웨어 개발에 필요한 도구들을 제공 

Framework들은 복잡하게 구성이 되어 있는 로봇의 소프트웨어 요소들을 기반으로, 다른 어떠한 로봇 소프트웨어을 개발하고 연동시키는데 필요한 기능들을 제공합니다. 따라서, 본인이 로봇의 소프트웨어를 처음부터 끝까지 모두 만들 것이 아니라면, 이러한Framework들을 이용하는 것이 현명하며, 또한 Team-work을 통하여 로봇의 소프트웨어를 개발할때도, 상호연동의 편의성을 위하여 이러한 Framework를 사용하는 것이 좋습니다.

ROS 가 대표적인 예 입니다. ROS 는 ROS 의 각 요소(노드) 들이, 원활하게 데이터를 주고 받을 수 있는 메커니즘을 제공함과 동시에, 여러 명령어, 개발된 소프트웨어를 빌드할 수 있는 도구, 시뮬레이터와 같은 유용한 도구들을 제공하죠. 이렇게, 뭔가 통합적으로 제공되는것을 통틀어 프래임워크(Framework) 라고 합니다. 다음에는, 이러한 로봇 개발을 위한 프래임 워크에 대하여 살펴 보기로 하죠
좀 귀찮더라도, 로봇의 소프트웨어쪽을 하시고 싶으신 분들은, 반드시 framework기반으로 공부를 하시는 것을 권장 드립니다


Software framework, a reusable set of libraries or classes for a software system (or subsystem)
Application framework, used to implement the standard structure of an application for a specific operating system


- 미들웨어 Middleware 

소프트웨어의 중간 http://cafe.naver.com/openrt/6512 

운영체제와 응용프로그램 사이의 i/O나 통신

예) ROS


Middleware is computer software that provides services to software applications beyond those available from the operating system. It can be described as "software glue".[1] Middleware makes it easier for software developers to perform communication and input/output, so they can focus on the specific purpose of their application. Middleware is the software that connects software components or enterprise applications. Middleware is the software layer that lies between the operating system and the applications on each side of a distributed computer network. Typically, it supports complex, distributed business software applications.


- 프레임워크=미들웨어,런타임,빌드도구 등

-applications

Application software, computer software designed to help the user to perform specific tasks

An application program (app or application for short) is a computer program designed to perform a group of coordinated functions, tasks, or activities for the benefit of the user. Examples of an application include a word processor, a spreadsheet, an accounting application, a web browser, a media player, an aeronautical flight simulator, a console game or a photo editor. The collective noun application software refers to all applications collectively.[1] This contrasts with system software, which is mainly involved with running the computer.

OS중 핵심구성요소 Kernel - FrameWork 중 Middleware  - applications

이 전체를 플랫폼이라고 함!


출처
http://kangusreport.blog.me/220629130686
http://blog.naver.com/dustmd0815/220807532921


'나는 프로그래머다! > 기초 다지기' 카테고리의 다른 글

유니코드 이해 하기  (0) 2017.09.19
디자인패턴  (0) 2017.04.01
윈도우 환경에서의 gcc  (0) 2016.10.31
SW 프로그램과 개발환경(리눅스)  (0) 2016.10.31
 

[서울/구로] 초가집 부뚜막청국장 - 청국장 순두부 맛집

Posted by ironmask84
2017. 9. 24. 20:58 생각과 일상/맛집


3번 째 맛집 포스팅 입니다 ^^

이번엔 지인 소개로 서울 남구로 쪽에 있는 '초가집 부뚜막 청국장' 이라는 가게인데요.

주변에 건물들이 많이 오래되어 보이는 만큼 여기도 제법 오래되고 손님이 많다고 합니다.

구로 쪽에는 가산동 아울렛, 구로 AK플라자 말고는 구로디지털단지역 주변 정도가

번화된 곳이라 구로쪽에 잘 모르는 경우라면, 적당한 식당이 눈에 잘 안들어옵니다.

지인 소개로 약간 기대하고 먹어봤는데, 가격은 조금 나가는데 깔끔하고 괜찮습니다.

청국장, 순두부 전문이라 메뉴들도 건강한 식단 메뉴가 많습니다. ㅎㅎ



내외부 사진



음식 사진


 주 메뉴인 청국장과 순두부를 시켰어요!! 찬 들도 다 건강해보이죠? ㅎㅎㅎ 


 사이드 메뉴로 해물파전!! 양이 매우 많아서 5명이서 먹었는데도 적당했습니다. 


위치


 위치는 구로역 AK플라자에서 조금 이동하시면 있어요 ㅎㅎ 


 

자몽 주유와 카카오뱅크!!

Posted by ironmask84
2017. 9. 22. 09:02 재테크/깨알꿀팁


사용 배경

차를 소지하고 계신 분들이라면, 주유비에 민감하실텐데요. ㅎㅎ

저 또한, 주유비를 조금이라도 아껴보고자 생활권 반경에서 가장싼 주유소를 찾아가곤 합니다.

최근에 제가 사는 동네 근처에서 가장 저렴한 곳은 1리터에 1440원 정도 입니다.

그러다 주유할인 카드를 좀 챙겨서 할인받아보려는 찰나에..


최근에 가입한 카카오뱅크 체크카드가 뙇! 하고 떠올랐죠 ㅎㅎ
(카뱅 체크카드는 여기를 참조해 주세요 --> http://ironmask.net/378 )

카뱅 체크카드를 이용하면 5만원 이상 주유 시 5천원 캐시백으로 돌려줍니다!!

그런데 문제는.. 제 차가 소형이라서 5만원 이상 주유가 힘듭니다...

그러면 카뱅 체크카드 혜택을 못받는데!!! 하고 고민을 좀 하다가..

자몽 이라는 어플을 알게되었는데요 ㅎㅎ


이 어플 장점 중 하나가 미리 결제를 하고, 결제된 금액보다 적게 주유가 되면
부분 환급을 해주기 때문에!!  

이 방법을 이용하면 5만원 이상 결제를 해놓고, 나머지 부분은 환급을 받되,
카뱅 체크카드 5천원 할인을 받아 볼 수 있다는 것이죠!!
==> 이용 후기 결과, 부분 취소해서 5만원 이상이 안되면 5천원 캐시백은 취소되네요 ㅠㅠ
       약간 긴가민가 하긴 했지만, 부분 취소포함 5만원 이상이 되어야 함을 알려드립니다. ㅜㅜ

자몽은 SK 사에서 만들어서, SK 주유소에 적용이 됩니다.
SK 주유소라고 다 되는 것은 아니니 앱에서 확인을 해봐야 합니다. ㅎㅎ

다행히, 제가 가던 주유소는 자몽 연동이 되는 주유소였어요~
그래서 얼마전에 첫 자몽 주유를 해봤습니다!!

이용 후기

자몽앱은 매우 직관적이어서 사용이 편리하므로
사용방법에 대한 부분은 생략하겠습니다. ㅎㅎㅎ

자.. 보시는것 처럼 자몽앱에서도 할인이 들어가기 때문에,
53000원 치를 넣어야 50895원으로 5만 이상이 됩니다.

50895원 치가 36.8 리터인 셈인데요.
원래 1리터당 1440원 하는데, 약 1380원 정도로 리터당 약 60원 정도나 빠졌구요!

더불어 카뱅 체크카드 5천원 캐시백도 받아 볼 수 있는 것이죠!!
--> 부분 취소 포함 5만원 이상이되어야 합니다. ㅜ

그리고 주유 결과 31.2리터만 넣게 되어, 7833원은 환급을 받게 됩니다. ㅎㅎㅎ

계산을 해보면 결국 31.2 리터를 리터 당 1440원이기 때문에 약 45000원인데
(50895원 - 환급 7833원 -  5000원 캐시백) = 38000 43000원 정도로 7000 2000원 싸게 주유했고요.
38000 43000 / 31.2 리터 = 리터 당 약 1220 1380원 정도 나왔습니다. ^^

제차는 기름통이 적어서 ㅜㅜ 5만원 이상 주유가 힘들지만,
중형 이상 이신분들은 가능하실테니, 잘 활용하시옵소서~~


 처음에 결제를 하면, 이렇게 예약증이 앱에서 보입니다. ㅎㅎ 


 자몽 기본할인 + 자몽 쿠폰 할인이 들어갔어요! 
 SKT 이용자면, 카라이프 카드혜택도 추가됩니다! 


 5만원 이상 결제를 위해 53000원치를 넣도록 해서 50895원이 결제 되었지만, 
 역시나 7833원 치나 부분 취소가 되었습니다 ㅋㅋ 


 36.8리터 치 결제 대비 들어간 기름은 31.2 리터네요 ㅎㅎ 


 주유 할인 적용되었다고, 문자가 날라왔습니다 ㅎㅎㅎ 
 이제 부분환급을 기다리고 있어요! 


자몽 가입하실 때 어플 설치 시 추천인 란에 'ironmask' 로 부탁드려요 ㅎㅎ
(함께 할인 쿠폰을 받습니다 ㅋㅋ)