목록전체 글 (431)
mojo's Blog
※ A Client-Server Transaction 대부분의 네트워크 애플리케이션은 클라이언트-서버 모델을 기반으로 한다. 서버 프로세스 및 하나 이상의 클라이언트 프로세스들 서버가 일부 리소스를 관리한다. 서버는 클라이언트의 리소스를 조작하여 서비스를 제공한다. 클라이언트의 요구에 의해 서버가 활성화된다 (vending machine analogy) 주목할 점은 클라이언트와 서버 둘 다 host 에서 작동되는 점인데 호스트 둘 다 동일할 수 있거나 다를 수 있다는 점을 알아두도록 하자. network host 란? 네트워크 호스트(network host)는 컴퓨터 네트워크에 연결된 컴퓨터나 기타 장치이다. 네트워크 호스트는 정보 리소스, 서비스, 애플리케이션을 네트워크 상의 사용자나 기타 노드에 제공..
Unix I/O ※ Unix I/O Overview Linux 파일은 m 바이트의 sequence 이다. B0, B1, ..., Bk, ..., Bm-1 Cool fact : 모든 I/O 디바이스는 파일로 표시된다. /dev/sda2 (/usr disk partition) /dev/tty2 (terminal) 커널도 파일로 표시된다. /boot/vmlinuz-3.13.0-55-generic (kernel image) /proc (kernel data structures) file 은 chunk 들의 단위이다. 이때 chunk 는 block 으로 "512 byte" 로 구성되어 있으며 read, write 에 대한 unit 이다. 디바이스에 파일을 mapping 하여 Unix I/O 라 불리는 간단한 인터..
문제 링크 : 19236번: 청소년 상어 (acmicpc.net) 19236번: 청소년 상어 첫째 줄부터 4개의 줄에 각 칸의 들어있는 물고기의 정보가 1번 행부터 순서대로 주어진다. 물고기의 정보는 두 정수 ai, bi로 이루어져 있고, ai는 물고기의 번호, bi는 방향을 의미한다. 방향 bi는 www.acmicpc.net 완전 탐색을 이용한 구현 문제이다. 문제 설명에 앞서 클래스 및 선언한 배열 및 상수에 대한 설명을 하려고 한다. ※ class Fish Fish 라는 클래스를 선언하였고 아래코드와 같이 구현하였다. class Fish { public: bool live; int x, y, direction; Fish() {} Fish(int x, int y, int direction, bool ..
Realtime Database 연동 1. Gradle Scripts => build.gradle(Module: ...) 에서 dependencies 부분에서 다음과 같이 코드를 추가해서 database 연동이 가능도록 설정한다. (추가 후 Sync Now 해주기) 2. 코틀린 파일 LikeActivity , 레이아웃 activity_like.xml , 그리고 manifests 에서 LikeActivity 를 추가해주도록 한다. 3. MainActivity.kt 에 화면이 시작하면 유저가 로그인했던 상태라면 activity_like 화면이 띄워지도록 하고 로그인하지 않은 상태면 activity_login 화면이 띄워지도록 한다. override fun onStart() { super.onStart() i..
Firebase 프로젝트 생성 1. 프로젝트 이름 작성 후 계속 누르기 2. 애널리틱스 사용을 하지 않고 프로젝트 만들기 3. 프로젝트가 만들어진다. 4. 안드로이드 앱 버튼을 누른다. 5. manifests 에 패키지 명을 복사해서 붙여넣고 앱 등록을 해준다. 6. 그 다음 google-service.json 을 다운하고 Android 를 Project 으로 변경한 다음에 app 폴더에 넣어주면 된다. 7. Firebase SDK 추가를 위해 build.gradle 을 열어서 다음과 같이 채워준다. buildscript { repositories { // Check that you have the following line (if not, add it): google() // Google's Maven..
※ Linux Process Hierarchy pstree 명령어를 치면 hierarchy 를 볼 수 있다고 한다. 명령어를 치면 다음과 같다. ※ Shell Programs Shell 은 사용자를 대신하여 프로그램을 실행하는 application program 이다. sh : Original Unix shell csh/tcsh : BSD Unix C shell bash : "Bourne-Again" Shell (기본 리눅스 쉘) shell 이 실행되도록 하는 코드는 다음과 같다. void eval(char *cmdline) { char *argv[MAXARGS]; /* Argument list execve() */ char buf[MAXLINE]; /* Holds modified command line..