🛸
- [안드로이드스튜디오] 11. 단말에 데이터베이스와 내용 제공자 만들기 1. 모바일 데이터베이스란? 앱을 만들 때 간단한 데이터 저장에는 SharedPreferences를 사용할 수 있다. 필요하면 파일을 직접 읽거나 쓸 수도 있다. 하지만 많은 양의 데이터를 체계적으로 관리하려면 데이터베이스를 사용해야 한다. 표준 SQL문으로 데이터를 조회하는 관계형 데이터베이스를 휴대 단말에서 사용할 수 있다면 적은 양의 데이터라도 접근이 가능하기 때문에 더 효율적이다. 안드로이드는 임베디드 데이터베이스로 개발된 경량급(Light-weight) 관계형 데이터베이스인 SQLite를 가지고 있다. SQLite 데이터베이스는 파일로 만들어진 하위 수준의 구조를 가지면서도 데이터베이스의 기능까지 그대로 사용할 수 있음 저장될 때 파일로 저장되므로 데이터 베이스의 복사, 이동, 삭제가 쉬움 데이.. 2020.05.31
- [시스템프로그래밍/Linux] 10. Signal Timer(1) 1. Signal 커널에서 내부적으로 발생하는 event를 이와 연관되어 있는 프로세스에게 signal 형태로 전달합니다. user process는 signal을 사용하여 긴급한 비동기적 이벤트(asynchronous urgent event)를 인터럽트(inturrupt)를 다루는 것과 같이 다룰 수 있습니다. 프로세스 입장에서 이 signal은 비동기적으로 긴급하게 발생하는 event입니다. 이 event가 자신에게 전달되면 이 이벤트를 handling 할 수 있는 handling 메커니즘을 동작시킬 수 있습니다. User's view User mode 동작 -> signal 발생 -> user program 이 inturrupt를 받음 -> signal handler(user mode가 inturru.. 2020.05.23
- [시스템프로그래밍/Linux] 10. POSIX-semaphore 1. Semaphore Semaphore는 1960년대 Dijkstra에 의해 설계된 시스템 콜입니다. mutex와 마찬가지로 멀티스레드(또는 멀티프로세스) 환경에서 critical section의 공유 자원에 접근제어를 위해 사용합니다. semaphore의 기본적인 특징은 다음과 같습니다. mutual exclusion(상호 배제)을 위한 block/wakeup 알고리즘 프로세스가 critical section에 접근하지 못한다면, 프로세스는 block 상태가 됨(block : Semaphore queue에 해당 프로세스를 등록하고, 프로세스는 CPU에서 release됨) 프로세스가 critical section을 이용한 후 빠져나올 때, waiting queue에 있는 프로세스를 깨움 CPU time.. 2020.05.23
- [안드로이드스튜디오] 10. 서버에 데이터 요청하고 응답받기 1. 네트워킹이란? 네트워킹은 인터넷에 연결되어 있는 원격지의 서버 또는 원격지의 단말과 통신해서 데이터를 주고받는 동작들을 포함합니다. 이를 이용하면 단말의 데이터뿐만 아니라 멀리 떨어져 있는 서버나 다른 사람의 단말의 데이터를 조회할 수도 있습니다. 서버에 데이터를 저장할 때 (1) 먼저 인터넷을 통해 데이터 통신이 가능한지를 알아본 후 (2) 데이터를 주고받는 과정을 실행합니다. 데이터를 주고받는 과정은 상당히 복잡하지만, 인터넷에 연결되어 있는 여러 단말을 동시에 사용할 수 있어서 다양한 데이터 자원을 효율적으로 사용할 수 있습니다. 네트워크 연결방식 이해하기 '2-tier C/S(Client/Server)' 연결 방식 2-tier C/S 연결 방식은 가장 많이 사용하는 네트워킹 방식으로 클라이언.. 2020.05.22
- [시스템프로그래밍/Linux] 2. File I/O(1) 1. Linux System Calls 리눅스에는 아래와 같이 다양한 시스템 콜이 존재합니다. File descriptor I/O open(); close(); creat(); read(); write(); seek(); // random access fcntl(); // for file/record locking Process control Thread programming IPC Signal handling Memory management Synchronization Time management Network socket API(TCP, UDP) 그 중 File descriptor I/O에 대해 알아봅니다. 2. System Calls & Library Calls for File I/O 파일과 관련된.. 2020.05.06