운영체제 : 이중모드, 하드웨어 보호
2021. 3. 27. 20:05
컴퓨터 과학 저장소/OS
이중 모드 * 한 컴퓨터를 여러 사람이 동시에 사용하는 환경에서 발생하는 문제점 한 사람이 여러 개의 프로그램을 동시에 사용 한 사람의 고의/실수 프로그램이 전체에 영향 STOP, HALT, RESET 등 * 사용자 프로그램은 STOP 등 치명적인 명령어를 내리지 못하게 이중 모드를 도입 사용자 모드 vs 관리자 모드 관리자 모드 = 시스템 모드 = 특권 모드 = 모니터 모드 * 특권 명령 (Privileged Instructions) STOP, HALT, RESET, SET_TIMER, SET_HW ... 관리자 모드에서만 내릴 수 있는 명령임 Carry : 자리올림 Negative : 연산의 결과가 음수 Zero : 연산의 결과가 0 Overflow : 연산의 결과가 자리 범위를 넘어섬 flag : ..
운영체제 : 고등운영체제, 인터럽트 기반 시스템
2021. 3. 21. 23:28
컴퓨터 과학 저장소/OS
* 폰 노이만 구조 CPU(processor) Memory 일반적인 OS는 메모리에 있는 수행해야할 작업들을 번갈아가면서 처리한다. 조금 했다가 다른거 넘어가고, 조금 했다가 다른거 넘어가고 ... * 다중 프로세서 시스템 (병렬 시스템, 강결합 시스템 -> 메인메모리가 하나로 묶여있기때문) CPU + CPU + CPU Memory 왜 CPU를 여러개 달았을까? -> 성능 향상 -> 비용 (비교적 값싼 CPU를 여러개하여, 비싼 CPU 하나보다 저렴하게) -> 신뢰성 (단일 프로세서를 사용하면, 고장 발생시 불능이 되지만, 다중 프로세서를 사용하면 동작 가능) 다중 프로세서 OS를 이용하여 단일 프로세서에서 사용하는 OS와 다른 운영체제를 채택한다. * 분산 시스템 (다중 컴퓨터 시스템, 소결합 시스템 ..
컴퓨터구조 : <CODE> H/W와 S/W에 숨어있는 언어 (릴레이와 회로)
2021. 3. 21. 20:32
컴퓨터 과학 저장소/Computer Architecture
릴레이를 직렬로 연결 => AND 게이트 -> 각 릴레이의 출력이 다른 릴레이의 입력값이 됨 릴레이를 병렬로 연결 => OR 게이트 --> 각 릴레이의 출력이 모두 같음 인버터(쌍투릴레이) => NOT 게이트 --> 서로 다른 접점으로 연결 가능한 형태 한 게이트의 출력이 다른 한 개 혹은 여러 게이트(인버터)의 입력으로 사용될 수 있다. 하지만 여러 게이트의 출력들이 서로 연결될 수는 없다. 그 실사례로, 네 개의 AND게이트 + 두 개의 인버터로 이루어진 회로를 2:4디코더 라고 한다. 이는 입력으로 두 비트가 사용되므로 입력 조합으로 서로 다른 네 개의 값을 출력할 수 있다. 이와 비슷하게 3:8 4:16 디코더도 만들 수 있다. ** 릴레이 1개는 1개의 트래지스터라고 볼 수 있다 요즘 그래픽카드..
Golang : 카카오채용공고 파싱
2021. 3. 21. 19:23
기타 저장소
예전에 만들어봤던 카카오社 채용공고 크롤러이다. package main import ( "fmt" "log" "net/http" "strings" "time" "github.com/PuerkitoBio/goquery" ) func main() { loc, err := time.LoadLocation("Asia/Seoul") if err != nil { panic(err) } now := time.Now() t := now.In(loc) nowUTCKorea := t.Format("2006-01-02 15:04:05") countNotice := 0 NoticeURL := "https://careers.kakao.com/index" resp, err := http.Get(NoticeURL) if err !..
컴퓨터구조 : <CODE> H/W와 S/W에 숨어있는 언어 (부울대수, 기초회로)
2021. 3. 21. 14:35
컴퓨터 과학 저장소/Computer Architecture
[ Ch.10 ] 수컷 고양이 : M 암컷 고양이 : F 황갈색 고양이 : T 검정 고양이 : B 흰색 고양이 : W 다른 모든 색 고양이 : O 중성화 O : N 중성화 X : U 부울 대수에서 + 기호는 합집합을 의미한다. ex) B+W = 검은색이거나 하얀색인 고양이 모두 부울 대수에서 * 기호는 교집합을 의미한다. ex) F * T = 암컷이면서 황갈색인 고양이 모두 부울대수에서도, 기존 대수학에서 적용되던 교환, 결합, 분배 법칙은 모두 적용된다. 게다가 부울 대수에서는, *연산에 대한 +연산의 결합법칙도 성립된다. ==> W + (B * F) = (W + B) * (W + F) 하얀색 고양이 + 검정 암컷 고양이 = 하얀색 고양이 + 검정 고양이 * ..
운영체제 : Linux 시스템 디렉터리
2021. 3. 21. 09:36
컴퓨터 과학 저장소/OS
* FTZ Trainer 참고 * dev 장치 파일 저장 sys 리눅스 커널관련 정보 proc 프로세스 정보, 커널 관련 정보 boot 부팅에 필요한 정보 usr 기본 실행파일, 라이브러리 파일, 헤더파일 var 시스템 운영중에 발생한 데이터, 로그 저장 tmp 임시데이터 저장(부팅 시 초기화) bin | sbin 명령어 실행파일 etc 리눅스 설정을 위한 각종 파일 mnt 파일 시스템을 임시로 연결 srv FTP, Web 등 시스템에서 제공하는 서비스의 데이터 저장 run 실행중인 서비스와 관련된 파일 저장 root root계정의 홈 디렉토리 (/ 디렉토리와는 다름) opt 추가 패키지 설치 media 외부장치 연결 기타 리눅스 기초 명령어 w (서버에 접속한 사용자들 보기) uname -a (시스템 ..