IT235 [운영체제] ep4-1) Concurrency: Mutual Exclusion and Synchronization ㅁ동시성(Concurrency): 여러 작업이 짧은 시간 간격으로 번갈아 가며 수행됨으로써 동시에 처리되는 것처럼 보이게 만드는 것현대 OS는 멀티 프로그래밍, 멀티 프로세싱 등의 기법으로 동시성을 사용하는 데에 있어 발생하는 문제들을 해결해야만 한다 상황) 은행 계좌 파일에 있는 데이터 x를 저장, 처음 잔고는 0원이다 ㅇRace Condition: 결국에는 둘 중에서 마지막으로 작업한 결과만이 남는다Race Condition의 발생을 막기 위해 critical section의 mutually exclusive한 실행이 필요하다 ㅇcritical section(임계구역): Race Condition이 발생할 수 있는 코드 (전혀 예측할 수 없음)critical section은 동시에 실행시키면 안된다.. 2024. 6. 29. 백엔드 개발자 추천 IT 연합 동아리 리스트 9가지 아래 5가지 조건을 만족하는 곳들로만 추렸습니다수정 및 의견사항은 언제든 환영입니다! 제 글이 정확하지 않을 수 있으니 참고만 해주시면 감사하겠습니다 :) [5가지 조건]1. 대학생뿐만 아니라 직장인도 함께 있는 곳2. 선착순이 아닌 면접 시스템이 철저하게 갖춰져 있는 곳 (= 경쟁률이 높은 곳)3. Spring을 사용하는 곳4. 프로젝트에 디자이너가 껴있는 곳5. 수준 높은 프로젝트를 만드는 곳 ㅇ매쉬업(Mash Up)https://mash-up.kr/ Mash-up | IT 연합 동아리매쉬업은 개발, 디자인에 관심과 열정이 있는 사람들이 모인 단체로 Product Design, Android, iOS, Node, Spring, Web 총 6개의 팀으로 구성되어 있습니다. 매쉬업에서는 전체모임의 세미.. 2024. 6. 27. [자료구조] 후기 코딩은 자고로 독학이라 생각한다 스스로 찾아보고 배우면서 시행착오를 겪어야지만 진정한 실력이 는다고 생각한다 이런 마인드를 가진 나였지만.. 자료구조 수업은 정말 힘들었다 비유를 하자면 알파벳을 알려주고서 바로 영작을 하라는 수준이었다c언어로 연결리스트를 처음 구현할 때의 그 막막함이란.. 진짜 심장이 턱! 하고 막히는 기분이었다 평소에 머리가 나쁘단 소리를 들어본 적이 없고, 수학 잘한다는 소리를 듣던 내가 그 순간만큼은 정말 심각한 바보가 된 것 같았다 손을 쓸 도리가 없었다 그러한 허탈감과 죄책감은 나의 오기를 발동하여 내 안에 있던 독기를 깨우는 듯했다 아마 연결리스트 문제를 세종대 OJ에 170번 넘게 submit 한 사람은 내가 유일하지 않을까..라는 생각이 든다 하지만 부끄러움은 단 1도 없.. 2024. 6. 25. MariaDB 설치 + 사용 방법 MariaDB는 MySQL에서 포크된 데이터베이스 관리 시스템(DBMS)이기 때문에 MySQL을 대체해서 많이 사용하곤 한다 (문법과 기능이 매우 유사) 주의! 도커가 설치되어 있어야 한다터미널에 명령어 입력# 1. MariaDB 이미지 다운로드docker pull mariadb# 2. MariaDB 컨테이너 실행# MariaDB의 기본 포트 번호는 3306 (MySQL도 동일)# 컨테이너 이름을 mariadb로 지정하고, 기본 포트 3306을 호스트의 포트 3306과 맵핑. 또한, MariaDB의 루트 비밀번호를 root로 설정docker run --name mariadb -d -p 3306:3306 --restart=always -e MYSQL_ROOT_PASSWORD=root mariadb# 3. .. 2024. 6. 25. [웹 지식] 도커(docker)란? 도커(docker): LXC(리눅스 컨테이너스)라는 커널 컨테이너 기술을 이용하여 만든 컨테이너 기술 중 하나Go언어로 개발된 오픈소스 프로젝트이며(아파치 라이선스 2.0) 사실상 업계 표준이 되어가고 있는 중이다 Docker는 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있게 해 준다. Docker는 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징하며, 이 컨테이너에는 라이브러리, 시스템 도구, 코드, 런타임 등 소프트웨어를 실행하는 데 필요한 모든 것이 포함되어 있다. Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있으며 컨테이너를 매우 가벼운 모듈식 가상 머신처럼 다룰 수 있게 된다. 출처 및 참고: 도커 공식 홈페이지 https://ww.. 2024. 6. 25. Node.js로 초간단 서버 만들어보기 Node.js를 이용해서 아주 간단한 서버를 만들어보자// server.js 파일let http = require('http'); // http 기능을 사용할 수 있도록 모듈을 받아온다function onRequest(request, response) { // onRequest: client에게 요청이 온다면 // http의 head + body 구조 템플릿을 생각하자 response.writeHead(200, {'Content-Type' : 'text/html'}); // 200(정상) response.write('Hello Node.js'); // write = writeBody response.end();}http.createServer(onRequest).listen(8888.. 2024. 6. 24. [데이터베이스] ep4-1) SQL: DDL SQL(Structed Query Language): 구조화된 질의 언어3가지 종류가 있다 DDL, DML, DCL ㅁDDL(Data Definition Language): 데이터 정의어 ① CREATE문: 테이블을 구성하는 속성 타입 지정 및 NULL 값 허용 여부 또는 기본 값 지정 등 정의 (속성 정의)- NOT NULL: 속성에 NULL값 허용 xUSER_ID VARCHAR(10) NOT NULL;(CREATE TABLE문으로 생성되는 테이블을 구성하는 속성은 기본적으로 NULL값을 허용) NOT NULL: 특정 열에 반드시 값이 있어야 하는 경우 e.g. 이름과 같은 필수 정보, 외래 키나 중요한 참조 값NULL 허용: 특정 열에 값이 없어도 되는 경우(나중에 입력될 가능성이 있는 경우) .. 2024. 6. 21. [데이터베이스] ep3) RDB ㅁRDB(Relational DataBase): 관계형 데이터베이스 키(key)와 값(value)을 테이블 형태로 구성한 데이터베이스 (참고) RDB 모델 https://claremont.tistory.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-ep1-DB-%EB%AA%A8%EB%8D%B8 [데이터베이스] ep1) DB 모델ㅁ논리적 데이터 모델들1. 계층형 데이터 모델 2. 네트워크형 데이터 모델 3. 관계형 데이터 모델(RDB: Relational DataBase)- 우리는 이 RDB에 대해 앞으로 지겹도록 다룰 것이다 ㅁRDB 데이터 모claremont.tistory.com [릴레이션의 특성] 튜플의 유용성: 하나의 릴레이션에 .. 2024. 6. 21. 주요 DBMS들 정리(미완) RDBMS(Relational DataBase Management System): 관계형 데이터베이스표준 언어로 SQL(구조화된 질의 언어: Structured Query Language )을 사용 오라클은 아주 악덕한 기업 (돈에 환장)스타트업에서는 Postgre SQL을 많이 쓴다 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ NoSQL(Not only SQL): 관계형 데이터베이스가 아닌 dbms(흔히들 SQL을 안쓴다고 해서 no + sql 로 생각한다)데이터를 조직하는 방법에는 리스트, 해시 테이블, 트리, 그래프 등이 있고 각각의 장점과 단점이 명확하다사실 아직까지 NoSQL에 내려진 구체적인 정의는 없다 하지만 NoSQL이라 불리는 데이터베이스.. 2024. 6. 20. 이전 1 ··· 18 19 20 21 22 23 24 ··· 27 다음