[회고] 신입 iOS 개발자가 되기까지 feat. 카카오 자세히보기
반응형

💻 CS 193

[Network] 네트워크의 분류

네트워크 물리적으로 떨어져있는 여러 시스템을 연결하여서 데이터를 주고 받을 수 있도록 하는 것 네트워크 분류 - 크기 LAN : Local Area Network, 하나의 장비(스위치)에 연결되어 있는 여러 시스템이 속한 네트워크 WAN : Wide Area Network, 하나 이상의 LAN으로 구성된 네트워크 MAN : Metropolice Area Network, 하나의 도시의 네트워크 네트워크 분류 - 구성 방법 Star형 : 중앙에 있는 네트워크 장비를 통해 모두 연결된 형태, 중앙장비가 고장나면 모든 시스템들이 통신 불가능함, 2계층, 스위치 장비를 통해 LAN 대역을 구성 Mesh형 : 모든 시스템들이 각각 개별적으로 연결됨, 비용이 많이 든다. 3계층, 라우터 장비를 통해 WAN 대역을 구..

[알고리즘 연습] 영지 선택 (DP 맛보기)

영지 선택 세로 H, 가로 W의 영지가 있다. 영지의 각 좌표에는 해당 좌표의 오렌지나무 개수정보가 주어진다. 황제가 나에게 이 중 세로 HH, 가로 WW의 영지를 준다고 한다. 그런데 나는 최대한 많은 오렌지나무를 가지고 싶다. 가능한 모든 경우를 찾아 가장 많은 오렌지나무를 얻었을 때의 개수를 출력하시오. 풀이 #include #include using namespace std; int main() { int h, w, hh, ww, i, j, tmp, max=0; cin >> h >> w; vector oranges(h+1, vector(w+1)); vector doranges(h+1, vector(w+1)); for(i=1; i oranges[i][j]; dor..

[Network] Port와 Port forwarding

Port Port? 네트워크를 통해 데이터를 주고받는 프로세스를 식별하기 위해 호스트 내부적으로 프로세스가 할당받는 고유한 값 naver에 접속할 때 naver.com:80은 접속되지만 naver.com:888같은 다른 숫자는 접속이 안됨을 확인할 수 있다. 이는 web server는 80이라는 숫자의 port를 사용하기 때문이다. ssh도 마찬가지로 22번 port로는 접속이 되지만, 다른 숫자로는 접속이 되지 않는다. ssh가 22라는 숫자의 port를 사용하기 때문이다. 모든 컴퓨터에는 이러한 'port'가 존재한다. 0~1024번 port는 인프라역할을 하는 유명한 통신시스템이 자리하고, 그 이후의 port는 특정 프로그램들에 대해 사용할 수 있다. 총 65536개의 port num..

Linux - 권한

권한 유닉스 시스템에서 여러 사용자들은 각자 보유하고 있는 권한이 다르다. 파일과 디렉토리에 대해 여러 유저의 Read, Write, Excute 권한이 다르다. ls -l을 입력했을 때 출력되는 아래와 같은 화면에서 권한을 확인할 수 있다. 여기서 r은 쓰기권한 w은 읽기권한 x은 실행권한이다. 제일 앞에 적힌 d같은 것은 파일의 특성이다. (d는 directory) 처음 3자리는 본인(user)의 권한을 설명하며, 그 다음 3자리는 그룹(group)의 권한, 그 다음 3자리는 그 외 모든 유저(other)의 권한을 의미한다. (rwx로 각 권한을 표기) 권한 변경하기 chmod [u/g/o/a] [+/-] [권한] [파일 혹은 디렉토리명] : user(u), group(g), other(o), all..

Linux - 다중 사용자

사용자 확인 유닉스 계열 운영체제는 여러 명이 사용할 수 있는 기능을 보유하고 있다. 여러 명이 사용할 수 있다는 것은 장점이 될 수 있지만, 보안 등의 문제에 신경을 많이 써야한다. 관리자와 일반사용자로 나누어지며, 사용자마다 권한이 다를 수 있다. $ id : userid와 groupid를 포함한 자신의 id를 출력한다. $ who : 현 시스템에 접속중인 유저를 출력한다. 사용자 추가 $ sudo useradd -m [사용자명] : 사용자생성 $ sudo passwd [사용자명] : 사용자 패스워드 설정 $ su - [사용자명] : 사용자변경 $ sudo passwd -u [사용자명] : root 계정 접속 unlock $ sudo passwd -l [사용자명] : root 계정 접속 lock $ ..

Linux - daemon, service, cron

daemon 항상 실행되고 있다는 특성을 가진 프로그램 웹 브라우저와 정보를 주고 받는 웹서버도 daemon의 일종이 되어야 할 것이다. /etx/init.d에 daemon 프로그램들이 위치한다. 일반적으로 이러한 daemon을 켜고 끄는 것은 service 명령어를 사용해야 한다. service daemon을 켤 수 있도록 도와주는 프로그램 대표적인 웹서버인 apache를 예시로 들어서 사용해보자. ($ sudo apt-get install apache2) $ sudo service apache2 start로 실행한다. $ ps aux | grep apache2로 확인해보면 잘 실행되고 있음을 알 수 있다. $ sudo service apache2 stop로 중단한다. cron 정기적으로 명령을 수행할..

Linux - 백그라운드 작업 수행

백그라운드 작업 수행 Ctrl + Z로 현재 작업 중인 환경을 백그라운드로 보낼 수 있다. fg로 다시 작접하던 환경으로 돌아간다. jobs로 현재 백그라운드로 실행 중인 프로세스의 목록을 확인할 수 있다. +로 표시된 프로세스가 fg 실행시 실행된다. -는 그 다음순서이다. 특정 프로세스를 실행하고 싶으면 fg %2와 같이 jobs에 표시된 숫자를 %와 함께 입력해주면 된다. 특정 명령어에 대한 작업을 백그라운드에 실행시키고 싶으면 끝에 &를 붙이면 된다. (ex. ls -alR / > result.txt 2> error.log &) 강제 종료를 원하면 kill -9 %2와 같이 kill과 함께 jobs에 표시된 숫자를 %와 함께 입력해주면 된다.

반응형