- vừa được xem lúc

Đây là một bài viết về Linux (Phần 1)

0 0 16

Người đăng: Tran Dinh Thang

Theo Viblo Asia

Chào mừng các bạn đến với bài viết khám phá Linux của mình

Trong loạt bài viết Đây là series về Linux, mình sẽ chia sẻ 6 Core Concept của hệ điều hành Linux, bao gồm:

  • Kernel
  • Shell
  • Users & Groups
  • Directories & Files
  • Permissions
  • Process

Mở bài

2 Core Concept mình sẽ giới thiệu trong phần này:

  • Kernel
  • Shell

1. Kernel

Kernel (nhân) là một phần mềm, nói đúng hơn là một phần mềm hệ thống nằm trong hệ điều hành Linux. Kernel là một phần rất quan trọng và được ví như là trái tim của Linux

Các phần mềm khác tương tác với Kernel thông qua các interface (giao diện) mà Kernel cung cấp. Các interface này cho phép phần mềm gửi yêu cầu tới Kernel, Kernel xử lý và truy cập tài nguyên phần cứng, sau đó phản hồi lại. Nhờ thế mà các phần mềm có thể sử dụng được các tính năng và tài nguyên của hệ thống

Kernel đảm nhận các vai trò như:

  • Quản lý bộ nhớ: Kernel chịu trách nhiệm cấp phát và giải phóng bộ nhớ cho các tiến trình trong hệ thống. Đảm bảo rằng các tiến trình chỉ truy cập vào các vùng nhớ được cho phép

  • Quản lý tiến trình: Kernel có vai trò khởi tạo, chấm dứt và lập lịch các tiến trình trong hệ thống. Đảm bảo rằng mỗi tiến trình được cung cấp đủ tài nguyên để thực thi và giám sát hoạt động của chúng

  • Giao tiếp với phần cứng: Kernel cung cấp một giao diện giữa phần mềm và phần cứng trong hệ thống, chịu trách nhiệm nhận các yêu cầu và phản hồi lại các yêu cầu

  • Quản lý hệ thống tệp tin: Kernel xử lý các yêu cầu như tạo, sửa, xóa, di chuyển, phân quyền các tệp tin trong hệ thống máy tính

  • Quản lý mạng: Kernel hỗ trợ các giao thức mạng và điều khiển hoạt động mạng. Nó quản lý việc kết nối, truyền và nhận dữ liệu qua mạng

  • Bảo mật hệ thống: Kernel đảm bảo an toàn và bảo mật cho hệ thống bằng cách kiểm soát quyền truy cập và cung cấp các cơ chế bảo mật

Có thể các bạn đã biết hoặc chưa, Chrome V8 (JavaScript engine trên Chrome/NodeJS) có nhiều tính năng quan trọng, bao gồm quản lý bộ nhớ. Chrome V8 không thể tương tác trực tiếp tới RAM, nó cần phải sử dụng các interface mà Kernel cung cấp, Kernel sau đó thực thi dựa trên các yêu cầu mà V8 gửi tới và truy cập vào RAM

2. Shell

Shell là một phần mềm hệ thống, là command-line interface (giao diện dòng lệnh) trong Linux, nằm trung gian giữa người dùng và Kernel

Shell có vai trò như là một trình thông dịch hoặc trình biên dịch dòng lệnh, nó đọc các lệnh từ người dùng, xử lý và gửi yêu cầu tới Kernel để Kernel thực thi. Shell cung cấp hàng loạt các chức năng tiện ích để người dùng tương tác được với hệ thống

Khi bạn thao tác trên GUI như tạo folder chẳng hạn, bản chất ở background nó đã sử dụng lệnh mkdir để gửi yêu cầu đến Kernel đấy (Mình có một bài viết giả lập lệnh mkdir bằng NodeJS, các bạn có thể đọc tại đây)

Một số shell phổ biến:

  • bash (shell mặc định của hầu hết các bản phân phối Linux ngày nay)
  • sh
  • zsh (mình đang sử dụng cái này, khá hữu ích)
  • ...

Một số lệnh phổ biến của shell:

  • mkdir
  • cd
  • ls
  • touch
  • ...

Kết bài

Với những kiến thức mình chia sẻ ở trên, mình hy vọng các bạn đã có một cái nhìn đầu tiên về Kernel và Shell trong Linux

Theo mình, dù không phải là System Admin hay chỉ là một Web Developer như mình, tìm hiểu một chút về hai thành phần này cũng sẽ giúp chúng ta có cái nhìn tổng quan về hệ điều hành Linux, điều này có thể giúp chúng ta hiểu và thực hiện một số tác vụ cơ bản, và đồng thời cung cấp nền tảng để tiếp tục học hỏi và khám phá sâu hơn các phần khác

Follow mình để cùng nhau khám phá những phần tiếp theo. Cảm ơn các bạn đã đọc

Bình luận

Bài viết tương tự

- vừa được xem lúc

Docker: Chưa biết gì đến biết dùng (Phần 3: Docker-compose)

1. Mở đầu. . .

0 0 106

- vừa được xem lúc

Các command trên ubuntu (chiếm 80%) - phần 5

Hello 500 ae, sau 4 số trong seri này mình thấy có vẻ ae có hứng thú đọc chủ đề này ghê. Hi vọng những gì mình tìm hiểu được sẽ giúp ích được cho nhiều bạn hơn.

0 0 35

- vừa được xem lúc

Những lệnh command shell linux cơ bản có thể bạn chưa biết - Phần 1

Bài viết này sẽ liệt kê một số command cơ bản thường được dùng trong linux, tiện dụng cho các bạn khi sử dụng linux mà có thể bạn chưa biết. Tôi là ai, câu lệnh này sẽ cho bạn biết bạn đang sử dụng linux bằng tài khoản người dùng nào.

0 0 43

- vừa được xem lúc

Cách sử dụng lệnh SCP để truyền tệp an toàn

SCP (secure copy) là một tiện ích dòng lệnh cho phép bạn sao chép an toàn các tệp và thư mục giữa hai vị trí. . From your local system to a remote system. Between two remote systems from your local system.

0 0 40

- vừa được xem lúc

Người ta làm cách nào để backup thường xuyên thư mục rất lớn?

. Vấn đề về sao lưu thư mục lớn. Mình có lưu "sương sương" 300GB các tệp tin của người dùng upload lên, như hình ảnh hay các tệp đính kèm.

0 0 38

- vừa được xem lúc

Các command trên ubuntu (chiếm 80%) - phần 4

Sau một kì nghỉ tết trong thời buổi đại dịch vừa qua. Không còn những buổi dong chơi đi chúc tết nữa. Ở nhà ra số tiếp theo cho anh em đây. Dưới đây sẽ là 2 command được sử dụng nhiều nhất khi sử dụng file.

0 0 27