본문 바로가기

전체 글

(197)
[LINUX] 디렉토리 구조와 파일 찾기 Linux Directory Structure (File System Structure) Explained with Examples Linux Directory Structure (File System Structure) Explained with Examples by Ramesh Natarajan on September 8, 2010 Have you wondered why certain programs are located under /bin, or /sbin, or /usr/bin, or /usr/sbin? For example, less command is located unde www.thegeekstuff.com 디렉토리 구조 1. / 최상위 디렉토리, 루트 2. /bin binary의 줄임말 ..
[LINUX] 쉘과 쉘스크립트 Shell 쉘 껍데기, 주변 사용자가 명령을 입력하면 그 명령을 컴퓨터가 이해할 수 있도록 하는 프로그램 커널과 사용자간의 다리 역할 Kernel 커널 알맹이, 핵심, 코어 하드웨어를 직접적으로 제어하는 중심 쉘 커널 하드웨어 동작 과정 사용자가 입력한 명령을 해석해서 커널이 이해할 수 있는 방식으로 커널에게 전달 -> 커널은 하드웨어를 제어해서 어떤 처리를 수행할 수 있도록 명령 -> 하드웨어는 기계가 동작하면서 처리 결과를 커널 -> 다시 쉘 -> 우리는 결과를 볼 수 있게 됨 사용자는 직접 커널을 제어하기 어렵기 때문에 쉘을 통해 커널에게 전달해주는 것이다. Shell과 Kernel이 분리된 이유 여러 가지의 쉘이 생길 수 있음 사용자가 선호하는 쉘을 선택하여 커널을 제어할 수 있도록 함 프롬프트 ..
[LINUX] IO Redirection 쉘에서 키보드로 명령을 입력받는 것을 표준 입력, 키보드로 입력받은 명령의 실행 결과를 모니터에 출력하는 것을 표준 출력 $ ls -l $ ls -l > result.txt// ls -l의 결과를 result.txt에 붙여넣기 $ cat result.txt// result.txt의 결과를 확인 프로세스 : 실행 중인 프로그램 명령어 하나하나를 프로세스라고 한다. 프로세스는 입력과 출력을 가지고 있다. ls -l ls라는 프로그램의 입력으로 들어오는 입력값 -l 여기에서 -l는 Command-line Argument >와 >>의 차이 > : 명령어 뒤에 나오는 파일에 쓸 때 사용 (write or overwrite) >> : 명령어 뒤에 나오는 파일에 추가할 때 사용 (append) $ echo abcde..
[LINUX] 리눅스 기초 리눅스 오픈 소스, 무료이기 때문에 발전이 무궁무진하다 윈도우/맥에서 리눅스를 설치없이 사용하는 방법 - codeonweb - cloud9 (우분투로 동작) 맥에서 터미널을 이용해 리눅스처럼 사용하는 법 맥은 리눅스는 아니지만 유닉스라는 공통 조상을 가진 운영체제이기 때문에 그냥 터미널에서 사용해도 되는 것임! 가상머신이란? 하드웨어를 소프트웨어적으로 구현해서 그 위에서 운영체제가 작동하도록 하는 기술 가상머신을 사용하는 이유? - 다른 운영체제를 사용해야 하는 경우 (맥에서 윈도우, 윈도우에서 리눅스) - 독립된 작업 공간이 필요한 경우 (바이러스 회피, 백업, 맥에서 오라클) - 하나의 머신에서 여러 명에게 운영체제 환경을 제공 VirtualBox란? 오라클에서 만든 가상머신 솔루션 / 오픈소스 / ..
http와 https의 차이 HTTP (HyperText Transfer Protocol) 웹 서버와 사용자 컴퓨터에 설치된 웹 브라우저 사이에 문서를 전송하기 위한 통신 규약. 기본 포트인 80번 포트에서 대기 중이며, 사용자가 TCP 80 포트를 사용해 연결하면 서버는 요청에 응답하면서 자료를 전송한다. HTTP는 암호화가 되지 않은 정보를 텍스트로 주고받기 때문에 네트워크에서 전송 신호를 인터셉트하는 경우 데이터 유출이 발생할 수 있다. 이러한 HTTP의 보안 취약점을 해결하기 위한 프로토콜이 HTTPS다. HTTPS (HyperText Transfer Protocol + Secure Socket) 데이터를 주고받는 과정에 보안 요소 추가 = 모든 통신 내용이 암호화됨 433 포트를 사용하며, 네트워크 상에서 중간에 제 3자가..
통신 프로토콜 통신 프로토콜이란? 컴퓨터나 원거리 통신 장비 사이에서 데이터를 주고받는 양식과 규칙의 체계. 이 약속을 지켜야 하는 이유는 프로토콜이 같지 않은 컴퓨터끼리는 통신을 할 수 없기 때문이다. HTTP / HTTPS / FTP / SFTP / Telnet / POP3 / SMTP / SSH / SSL / SOAP / ARP FTP - 포트번호 20(데이터 전송용), 21(제어용) - 파일 전송 프로토콜 HTTP - 포트번호 80 - 하이퍼텍스트 전송 프로토콜 - 인터넷에서 하이퍼텍스트 문서를 교환하기 위해 사용 되는 프로토콜 Telnet - 포트번호 23 - 원격지 컴퓨터 시스템에 로그인할 수 있도록 도와주는 프로토콜 SMTP - 포트번호 25 - 전자 우편 전송 프로토콜 - 사용자의 컴퓨터에서 작성된 메일..
7장_3 13. 추상 클래스와 추상 메서드 추상 클래스 추상 메서드를 갖고 있는 클래스 (미완성 설계도 = 미완성 클래스) 추상 클래스도 일반 클래스처럼 인스턴스 변수, 생성자, 메서드 모두 가질 수 있다. 단지, 플러스로 추상 메서드를 갖고 있다고 생각하면 된다. 추상 메서드를 갖고 있는 클래스에는 abstract를 붙여준다. 추상 클래스의 목적 다른 클래스 작성에 도움을 주기 위한 것으로 인스턴스 생성 불가 추상 클래스는 상속을 통해 자손이 각자의 역할에 맞게 오버라이딩하여 추상 메서드를 완성해야 인스턴스 생성 가능 추상 메서드 미완성 메서드 = 선언부만 있고 몸통{ }이 없는 메서드 추상 메서드 앞에는 abstract를 붙여준다. 상속을 통해 여러 개의 추상 메서드를 물려받았을 경우, 모두 구현해야줘야한다...
7장_2 9. 다형성 조상 타입 참조 변수로 자손 타입 객체를 다루는 것 SmartTv s = new SmartTv(); // 참조 변수와 인스턴스의 타입이 일치 Tv t = new SmartTv(); // 조상 타입 참조 변수로 자손 타입 인스턴스 참조 -> 다형성 위의 두 선언의 차이는? 일반TV는 멤버 5개를 가지고 있다. 스마트TV는 일반TV를 상속해서 일반TV꺼 5개 + 본인꺼 2개 총 7개를 가지고 있다. 첫 번째 선언은 스마트TV 리모컨으로 스마트TV의 7가지 기능을 모두 사용할 수 있다. 두 번째 선언은 일반TV 리모컨으로 스마트TV의 7가지 기능 중, 일반TV가 가진 5가지 기능만 사용할 수 있다. 더 적은 멤버를 사용 가능한데 왜! 다형성이 장점이 될 수 있을까? 반대로, 자손 타입 참조 변수로..