Bài đăng

Process và Thread

Hình ảnh
M ột process là một chương trình đang được thực thi (đang chạy). Nhưng, một chương trình không phải là một process. Vì chương trình là một file, hay một folder bị động nằm trên máy; Trong khi đó, một process là một chương trình đang hoạt động (đang chạy, đã được tải lên bộ nhớ chính để hoạt động). New: process mới được tạo. Running: process đang được thực thi/ chạy. Waiting: process đợi I/O hoặc tín hiệu nào đó. Ready: process sẵn sàng được CPU chạy. Terminated: process hoàn thành việc. Thread, hay luồng , là một tiến trình nhỏ có thể được quản lý độc lập bởi một bộ lập lịch. Tất cả các luồng trong một chương trình đơn được chứa hợp lý trong một tiến trình. Nhân cấp phát một ngăn xếp và khối điều khiển luồng (TCB) cho mỗi luồng. Hệ điều hành chỉ lưu con trỏ ngăn xếp và trạng thái CPU tại thời điểm chuyển đổi giữa các luồng của cùng một tiến trình. Các thuộc tính của một Thread : - Một cuộc gọi hệ thống có thể tạo nhiều hơn một luồng. - Luồng chia sẻ dữ liệu và thông tin. - Luồng chia ...

Xử lý đa luông phần hai

Hình ảnh
 Để nâng cao được hiệu suất của các ứng dụng thì việc đầu tiên chúng ta có thể nghĩ đến là nâng cấp phần cứng sử dụng CPU có nhiều core (nhân CPU)  hơn, thêm bộ nhớ đệm (cache) nhưng những việc làm này đều có giới hạn của nó và điều phải bàn đến là giá cả. Thay vì nâng cấp phần cứng chúng ta có cách khác là xây dựng những phần mềm hiệu quả hơn, tối ưu hơn để cải tiến được hiệu suất Multithreaded cũng được sử dụng rộng rãi trong nhân hệ hiều hành (operating system kernels). Có nhiều luồng hoạt động trong một kernel, và mỗi luồng đảm nhiệm một công việc riêng biệt, như quản lý thiết bị, quản lý bộ nhớ, quản lý ngắt… Một vài ví dụ có thể đưa ra như là: Solaris có một set những Thread chuyên quản lý bộ xử lý ngắt; hay Linux có một kernel thread chuyên quản lý những vùng bộ nhớ trống trong hệ thống. Lợi ích của Multithreaded: Khả năng đáp ứng: Multithread giúp các ứng dụng tương tác có thể hoạt động tốt hơn vì ngay cả khi một phần chương trình bị block hoặc cần một thời gian dài để...

Lập trình đa luồng (multithreading) phần một

Hình ảnh
Thread là một đơn vị cơ bản trong CPU. Một luồng sẽ chia sẻ với các luồng khác trong cùng process về thông tin data, các dữ liệu của mình. Trong nhiều trường hợp nhất định, một ứng dụng có thể được yêu cầu thực hiện (request) nhiều nhiệm vụ giống nhau. Ví dụ: một web server nhận lệnh từ khách hàng nhấn vào trang web, hình ảnh, âm thanh… và tất nhiên, một web server có thể phải nhận rất nhiều (hàng nghìn, hàng triệu cho đến hàng trăm triệu) yêu cầu cùng một lúc. Vì thế, nếu web server đó chạy theo dạng single-threaded, tức là chỉ một khách hàng được giải quyết yêu cầu trong 1 khoảng thời gian, thì những khách hàng khác sẽ phải đợi rất lâu để mình có thể access vào trang web. Multithreading là khả năng xử lý nhiều thread cùng lúc của CPU. Khi có nhiều task khác nhau, CPU có thể làm việc với chúng đồng thời - concurrent hoặc song song - parallel. Trong một đơn vị thời gian (nanosecond), chỉ có một chương trình (process) được chạy. Trong chương trình đó, lại chia ra thành nhiều luồn (thr...

Người khuyết tật sử dụng các công nghệ

- Bạn đã bao giờ sử dụng máy gọt vỏ có tay cầm khó sử dụng chưa? Giống như cái này ngay tại đây. Năm 1990, OXO quyết định thiết kế lại các sản phẩm để chúng dễ dàng hơn cho những người bị hạn chế về khả năng di chuyển.  Giờ đây, những thiết kế này đã trở thành sản phẩm bán chạy nhất bởi vì việc tạo ra thứ gì đó dễ sử dụng hơn cho những người dùng này có tác dụng phụ là giúp mọi người dùng dễ sử dụng hơn.  Một trong những kỹ năng chính mà các nhà thiết kế web phải học là làm cho mọi thứ có thể truy cập được không chỉ vì đó là điều đúng đắn cần làm mà còn vì nó có thể ảnh hưởng đến lợi nhuận. Giờ đây, người khuyết tật sử dụng các công nghệ được hỗ trợ giúp họ điều hướng bằng thiết bị của mình và mặc dù những công nghệ này có thể tự mình thực hiện một cách công bằng nhưng các nhà phát triển có thể tác động đến mức độ hoạt động của những công nghệ này.  Theo cách tích cực hoặc tiêu cực. Ngoài DOM, các thiết bị cũng tạo ra một đặc điểm hỗ trợ cung cấp thông tin bổ sung cho các...

Xử lý chuỗi trong Excel

Nhữnghàm cắt chuỗi trong Excel, thường được sử dụng như: Left, Right, Mid.  HÀM LEFT Chức năng: Là hàm lấy N ký tự, bắt đầu từ bên trái của chuỗi. Cú pháp: Left(Chuỗi,N)  HÀM RIGHT Chức năng: Là hàm lấy N ký tự, bắt đầu từ bên phải của chuỗi. Cú pháp: right(Chuỗi,N) HÀM MID TRONG EXCEL Chức năng: Lấy N ký tự của chuỗi bắt đầu từ vị trí được chỉ định. Đây là hàm lấy ký tự bất kỳ trong excel Cú pháp: MID(chuỗi,M,N) Trong đó: Chuỗi: Là 1 ô địa chỉ chứa chuỗi ký tự. M: Là vị trí bắt đầu muốn lấy. N: Là số ký tự muốn lấy. HÀM CONCATENATE Chức năng: Nối nhiều chuỗi thành 1 chuỗi Cú pháp: CONCATENATE(chuỗi 1, chuỗi 2….) Lưu ý: Hàm CONCATENATE chỉ nối tối đa 255 chuỗi. VD: Nối chuỗi Họ lót và Tên HÀM EXACT Chức năng: So sánh giữa hai chuỗi. Nếu hai chuỗi giống nhau thì trả về TRUE, nếu hai chuỗi khác nhau thì trả về FALSE. Có phân biệt chữ hoa và thường. Cú pháp: EXACT(chuỗi 1, chuỗi 2) Ví dụ: So sánh giữa 2 chuỗi

Tính công bằng Excel

Sử dụng Tự Tính tổng Bạn có thể sử dụng tính năng Tự Tính tổng để tính tổng nhanh một cột hoặc một hàng hay nhiều số. Chọn một ô bên cạnh các số bạn muốn tính tổng, bấm Tự Tính tổng trên tab Trang đầu, nhấn Enter (Windows) hoặc Return (máy Mac) và sẽ ra kết quả! Một số quy ước chấm công và tính ngày công phổ biến Ký hiệu X: Đánh dấu cho những ngày làm đủ 1 ngày công (8 tiếng) Ký hiệu N: Đánh dấu cho những ngày làm 1 nửa ngày công (4 tiếng) Số giờ: Những ngày làm ít hơn 8 tiếng (mà không phải 4 tiếng) thì có thể ghi số giờ Ta có thể nhìn ví dụ đưới đây: Để tính ngày công, nếu chỉ có số thôi thì chúng ta có thể dùng hàm SUM để tính tổng các ngày công. Tuy nhiên, cách này chỉ áp dụng được nếu các ngày công được chấm bằng số hoặc bằng 1 loại ký hiệu duy nhất. Như các bạn có thể thấy, trong bảng chấm công này, việc chấm công đươc chấm bằng cả số và ký tự chữ, không chỉ có số hoặc 1 ký tự duy nhất, phức tạp hơn rất nhiều phải không? Vậy làm cách nào để có thể dễ dàng tính ngày công với dạng ...

Excel tài chính

 Một trong những ứng dụng cao cấp của Excel trong quản trị doanh nghiệp là nhóm các hàm tài chính. Mỗi hàm giải quyết một bài toán tài chính thường gặp trong doanh nghiệp. Trong Excel các hàm tài chính được chia làm 3 nhóm cơ bản là: các hàm khấu hao tài sản cố định, các hàm đánh giá hiệu quả vốn đầu tư và các hàm tính giá trị đầu tư chứng khoán.