일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- AI
- LG Aimers 4th
- supervised learning
- ChatGPT
- LG
- LLM
- gpt
- 오블완
- 딥러닝
- 해커톤
- deep learning
- PCA
- 지도학습
- regression
- OpenAI
- Classification
- 머신러닝
- 분류
- GPT-4
- 티스토리챌린지
- Machine Learning
- LG Aimers
- 회귀
Archives
- Today
- Total
SYDev
[오픈소스SW개발방법및도구] Lecture 01. Introduction to Opensource and Linux 본문
3학년 2학기 전공/오픈소스SW개발방법및도구
[오픈소스SW개발방법및도구] Lecture 01. Introduction to Opensource and Linux
시데브 2024. 9. 18. 15:32경희대학교 이성원 교수님의 오픈소스 SW 개발 방법 및 도구 수업을 기반으로 정리한 글입니다.
Goal
- Understanding of
- Opensource
- Latest Software Development Process, Philosophy and Tools
- Opensources in Software Development Process and Tools
- Experience of Linux as your
- Main Computer(instead of Windows or MacOS)
- Main Programming Environments
- Main Data Analytics Environments
- Main Gaming Platform
- Main Hobby Environments
- and etc.
Topics
- Intro to Opensource and Linux
- Problem Definition
- Selecting Right Language
- Selecting Right OS
- Design (&Development) Process
- Design by Figures
- Programmers in Korea
- Software Maintenance
- Test and Enhancement
- Design Pattern
- Online Co-work and Education
- Open Source License
- Project Management
Open Source
1. Definition of Open Source Software
- Open Source Software
- Open source software(OSS): source code를 공개해 누구나 특별한 제한 없이, 그 코드를 보고 사용할 수 있는 open source license를 만족하는 software
- Free Software
- Free Software: 복사와 사용, 연구, 수정, 배포 등의 제한이 없는 software 혹은 그 통칭
- 1990년대 후반에는 free software 대신, open source software라는 용어가 많이 쓰이기 시작
- from GNU: not free beer -> free speech
- open source를 수정하여 재배포 -> contribute
- Free Software Foundation
- Free Software Foundation(FSF): free software movenment를 돕기 위해 설립된 비영리 단체
- software가 copyleft를 만족하며 배포되도록 함 -> GNU General Public License
- GNU Project: Richard Stallman의 주도하에 시작된 공개 소프트웨어 프로젝트 -> 누구나 자유롭게 실행, 복사, 수정, 배포할 수 있고, 누구도 그런 권리를 제한하면 안 된다는 사용 허가권(License) 아래 소프트웨어를 배포
copyleft(저좌권): 파생 저작물에 동일한 자유를 적용해야 한다는 조건
- 창작물의 자유로운 수정, 복제, 공유, 재배포를 허용하는 법적 기술
GNU General Public License(GNU GPL): 자유 소프트웨어 재단에서 만든 자유 소프트웨어 라이센스로, 소프트웨어의 실행, 연구, 공유, 수정의 자유를 최종 사용자에게 보장
- 가장 널리 알려진 copyleft
- GNU OS
- GNU: 하나의 os이자, computer software의 모음집
- GNU는 온전히 free software로만 이루어져 있으며, 그 중 대부분이 GNU project의 GPL로 라이센스된다.
- GNU: GNU is Not Unix -> 디자인이 unix 계열이지만, free software인 점과 unix code를 포함하지 않는다는 점에서 차별점
2. Open Source Hardware
- Arduino
- 아두이노 hardware products는 CC BY-SA license에 의해 규정됨 <-> software는 보통 GNU Lesser General Public License(LGPL) or GNU General Public License(GPL)
3. Open Source Processor
- RISC-V
- 프로세서를 만드는 설계 및 각종 소프트웨어를 만들어서 공유
4. Open Source Datacenter
- Open Compute Project(initiated by Facebook)
- Open Compute Project: 사용자가 원하는 인프라를 공급자가 만들어 제공하도록 하는 프로젝트
- server, stroage, ...
- OCP TIP(Telecom Infra Project)
- opensource hardware와 software 사이에 통신
Linux
1. Why Linux?
- Linux Dominates
- Smartphones and IoT - android
- Physical Computing - Raspberry Pi, ..
- Single OS for Super Computers
- 현재의 서버 운영체제는 대부분 Linux
- Liux over Windows Desktop
- Linux over Robot
- ROS
- Linux over Game
- Retropie
- Stream OS
- Linux over Data Science
2. 협의& 광의의 Linux
- narrow Linux
- Linus Torvalds가 개발한, linux kernel software(OS)
- Linux Foundation(LF): Linux의 발전을 제고하기 위해 설립된 비영리 연합체
- 광의의 Linux
- linux foundation 산하 900개의 projects
-> Linux라고 할 때, linux os와 linux 기반의 거대한 ecosystem을 구분
3. Linux Desktop
- Ubuntu Linux -> for server, cloud & IoT
- Intel's Clear Linux Project
- KALI -> Linux for Hackers
참고자료
'3학년 2학기 전공 > 오픈소스SW개발방법및도구' 카테고리의 다른 글
[오픈소스SW개발방법및도구] Lecture 02. Problem Definition (4) | 2024.09.19 |
---|