=== khanhpt|Zzz is now known as khanhpt === ubungu is now known as quydo === chungbd|away is now known as chungbd === quydo is now known as ubungu === khanhpt is now known as khanhpt|Zzz === ubungu is now known as quydo === quydo is now known as ubungu === ubungu is now known as quydo === vubuntor631 is now known as Raven27 [08:16] i5 m520 sao ko cài được ubuntu nhỉ [08:16] Raven27: 2015-06-17 - 18:12:22ICT tell Raven27 add thoải mái magnet luôn [08:17] this kenel requires an x86-64 cpu, but only detect i686 cpu [08:17] unable to boot - please use a kernel appropriate for your cpu [08:18] vẫn cài được win 7 64bit mà nhỉ [08:18] check bios xem [08:18] có thể cái cái switch nào đó [08:19] cài ngon lành [08:19] Raven27: cat /proc/cpuinfo [08:20] làm sao bác Kud [08:20] ? [08:20] xem cpu info thế nào ấy [08:21] để em mò trong bios thử như bác lew nói đã nhé :D [08:21] mẹ [08:21] Raven27: nó nói câu kia ở chỗ nào? [08:22] lúc sáng họp mà ức chế ko chịu dc [08:22] lúc thì kêu làm đề tài chuyển mã nguồn mở [08:22] vừa boot lên là văng ra câu đó [08:24] em hiểu rồi mấy bác [08:24] :D [08:25] tìm được 1 trang nước ngoài hướng dẫn fixx rồi [08:25] thanks bác lew và bác kud nhé [08:27] kud hả [08:27] nghe giống kứ* vậy [08:27] "ku dờ" [08:28] * Raven27 thấy giống chữ kut' ay [08:30] đi cài ubuntu vào lap đây bb mấy thím :D [08:31] uh huh [08:54] lewtds cài hộ mấy plugin doku được không, viết mấy trang dùng table khổ quả [08:55] kiểu màu mè cho table ấy === khanhpt|Zzz is now known as khanhpt === khanhpt is now known as khanhpt|Zzz === khanhpt|Zzz is now known as khanhpt === khanhpt is now known as khanhpt|Zzz === quydo is now known as ubungu [11:05] lewtds tên trang wiki có nên để tiếng anh không nhỉ ví dụ cài_đặt_phần_mềm.txt -> install_software.txt MrTuxHdb [11:07] paste link nó bị escape đúng k? [11:07] không hệ_diều_hanh_ubuntu [11:07] đó [11:07] cái patch hôm trước là để sửa cái này [11:07] nhưng chưa apply [11:08] nếu patch okay thì nó sẽ bỏ dấu đúng cách [11:08] uh huh [11:08] thành he_dieu_hanh_ubuntu [11:09] à há, vậy cứ đặt tên thế sau sửa lại được khong [11:09] yup [11:10] okie vậy cứ edit đã === chungbd is now known as chungbd|away [11:30] http://42.112.37.140/doku.php?id=start trang start này ổn chứ [11:30] [ start [Ubuntu-VN] ] - 42.112.37.140 [11:31] mmm [11:31] hơi thiếu thông tin giới thiệu chung và cho người bắt đầu [11:31] cái cho người bắt đầu thì nhét vào sau được [11:31] giờ thêm phần giới thiệu 1 chút thôi [11:31] với cả chữ wikia thì bỏ a đi [11:31] mà cứ làm [11:31] có gì mình vô sửa sau [11:31] okie, kiểu muốn nó thành trang tin tức cập nhật [11:32] kiểu mainpage wikipedia === khanhpt|Zzz is now known as khanhpt === khanhpt is now known as khanhpt|Zzz === khanhpt|Zzz is now known as khanhpt [14:06] 2 chào các bác [14:06] cho em hỏi có cách để mà wine chạy đc chương trình là sao vậy [14:08] ? [14:08] cài vào rồi click đúp? [14:09] tại em muốn biết là sao [14:09] với file nhị phân của window [14:09] sao mà nó lại chạy đc trên linux ấy mà [14:10] wine nó copy hết đoạn mã đó rồi conver sang phải ko bác [14:10] k [14:10] bạn có biết về liên kết động k? [14:10] biết [14:10] okay [14:10] trên win [14:10] cái file exe nó sẽ gọi các hàm hệ thống của win để tạo giao diện các thứ [14:11] bằng cách liên kết động đến thư viện kernel32.dll và user32.dll [14:11] ok :3 [14:11] rồi sao nữa bác [14:11] wine nó liên kết động file exe đến các hàm giả của nó [14:11] map sang các hàm của linux [14:12] wao [14:12] còn về file exe sao lại chạy trên đc linux hả bác [14:13] thế tại sao mà nó lại không 'chạy' được? [14:13] tại sao thiếu thư viện hả bác ? [14:14] vậy là file nhị phân của window và linux là cùng chung tính chất [14:14] nó là cục 0101001110 [14:14] nạp vào là chạy [14:14] có gì đâu [14:14] yup, nó đều là code chạy được trên CPU [14:14] chẳng qua là khác layout một chút thôi [14:15] wine sẽ parse file exe để lọc ra phần quan trọng [14:15] và execute [14:15] ồh ôh em hơi hơi hiểu rồi [14:16] vubuntor658: biết assembly k? [14:16] ok em biết [14:17] cơ chế nó chủ yếu là ntn [14:17] khi bạn click đúp một cái file exe [14:17] thực chất sẽ là chạy lệnh sau [14:17] $ wine tên_file.exe [14:17] wine nó mở file đó [14:17] ok [14:17] parse định dạng PE của exe [14:18] tìm ra vùng chứa object code (là code assembly đã compile thành mã máy đấy) [14:18] copy nó vào bộ nhớ của wine [14:18] sau đó tìm tất cả những lời gọi hàm hệ thống [14:18] kiểu [14:19] call 0xABCD [14:19] trong đó ABCD là địa chỉ của hàm hệ thống windows [14:19] sửa lại hết ABCD thành địa chỉ đến hàm của riêng wine [14:19] implement lại hàm của win [14:20] sau đó jmp đến địa chỉ _start của cục code exe đấy [14:21] uh huh === khanhpt is now known as khanhpt|Zzz [14:23] KudzuCrab: linux còn hỗ trợ a.out k nhỉ? [14:23] còn [14:24] ok [14:24] :3 [14:25] vubuntor658: https://en.wikipedia.org/?title=Portable_Executable [14:25] [ Portable Executable - Wikipedia, the free encyclopedia ] - en.wikipedia.org [14:25] nếu thích tìm hiểu thêm [14:25] ngày xưa /me còn nhớ là còn có định dạng MZ [14:25] với một cái định dạng nữa của DOS [14:25] code k quá được 64kb [14:26] ko ngờ lại phức tạp vậy [14:26] MZ khá đơn giản [14:26] à COM [14:26] btw, 64 là com [14:26] MZ cho cả win 16 bit [14:27] hèn chi em đọc trong mã wine [14:27] có đoạn 64kb [14:27] vubuntor658 siêu nhân gớm :3 [14:28] em đọc vậy thôi chứ cũng chẵng hiểu lắm :3 [14:28] nhờ bác thông não em mới hiểu chút chút [14:28] :3 [14:28] COM gần như chả có format gì [14:28] COM mình còn phải tự jump [14:29] tránh cái header = ) [14:29] nó là 1 cục mix cả data lẫn code [14:29] vậy là thằng wine nó import cục exe sau đó thì chỉnh cái cục đó lại trong ram [14:29] tiếp đến là chạy nó phải ko bác [14:30] chỉnh cho hợp với hàm của nó [14:30] yup [14:31] vậy là cái wine này chẵng khác gì recompiler [14:32] dynamic linker thì đúng hơn [14:32] ok :3 [14:33] vào trong bộ nhớ của wine [14:33] nói chung [14:33] không, vào linux [14:33] bất kỳ một chuỗi byte nào [14:33] hợp format của CPU [14:33] đều có thể chạy được [14:34] vậy nếu như chúng ta biến wine thành recompiler sau đó thì biến file exe thành file nhị phân của linux [14:34] chắc ngon hơn ko bác [14:34] làm được [14:34] nó có recompile cái gì đâu [14:34] nhưng để làm gì? [14:34] KudzuCrab: binary address patching [14:34] đấy không gọi là recompile [14:35] arch giống nhau [14:35] chứ sửa address thì thằng loader nào chả phải làm [14:37] ok binary address patching [14:41] híc [14:41] đang nói hay [14:41] rớt mạng [14:42] vậy là thằng wine nó thực hiện chỉnh sửa dựa trên mã asemly phải ko bác [14:42] không [14:42] nó để kệ assembly [14:43] http://linux.die.net/man/8/ld-linux [14:43] [ ld-linux(8): dynamic linker/loader - Linux man page ] - linux.die.net [14:43] nó giống cái này này === ubungu is now known as quydo [14:44] ồh [14:47] àk nếu vậy hàm giả của mình [14:47] cũng phải có cú pháp tương tự giống hàm thật của nó [14:47] chỉ có điều có thể khác phần ruột [14:48] hàm giả nào ở đây.. [14:48] khi mà mình cung cấp thư viện cho nó đó bác [14:49] yup [14:49] interface phải giống hệt [14:50] https://github.com/wine-mirror/wine/blob/master/dlls/user32/winproc.c [14:50] [ wine/winproc.c at master · wine-mirror/wine · GitHub ] - github.com [14:51] KudzuCrab: là cái đống wine thế vào ý. Gotta go with the flow here :-j [14:52] wine basically là build lại một cái windows trong linux [14:53] lewtds: no, me nutzi [14:58] vậy là em đã hiểu [14:58] sao mà wine nặng [14:58] vừa phải dịch mà còn vừa phải chạy [14:59] nó chạy nhanh hơn bên windows đấy [15:00] ừm [15:01] nhưng mà liên lạc với driver vga của nó sao mà em thây nó hơi tệ [15:02] KudzuCrab: how so? [15:02] lewtds: funny er? [15:02] vubuntor485: nó phải translate API từ Direct3D sang OpenGL [15:03] có những cái nó k translate được hết, hoặc k thể nhanh bằng [15:03] lewtds: pure computation có khi nhanh hơn đấy [15:03] :3 [15:03] thậm chí có những game phụ thuộc vào quirk của driver card đồ họa trên win nó cũng phải bắt chước lại giống hệt [15:03] scheduling & stuff [15:04] nhưng nói chung mấy game /me hay chơi đều ổn cả :3 [15:04] đã phá đảo diablo 2 trên wine haha [15:04] super stable [15:04] :3 [15:04] game em chơi thì nói chung lag [15:04] :3 [15:05] ko kể là card 2gb mà sử dụng mới có 300mb [15:06] nvidia hả? [15:06] ok :3 [15:06] đã cài binary driver của nv chưa? [15:06] em dùng nvidia [15:06] đã cài rồi [15:06] thế chịu [15:06] cái driver đó là tốt nhất rồi [15:06] wine ko dùng hết hiệu năng anh àk [15:06] tốt nhất không game [15:06] muốn hiệu năng tốt thì về windows [15:06] không chơi game nhỏ nhẹ [15:06] opengl performance ở một số test còn cao hơn trên win [15:06] em dung steam thì nhảy phát lên 1gb luôn [15:07] back to windoof [15:07] end story [15:07] =) [15:07] nói chung thì linux ngon [15:07] :3 [15:07] linux lởm [15:07] nah, càng đào sâu sẽ cái thấy nó lởm [15:07] chả ai trong này kêu ca windows [15:07] ơ phản động [15:07] chẳng qua là dùng quen tay rồi [15:07] chỉ thấy kêu linux lởm [15:07] =)) [15:07] khó bỏ thôi :'( [15:07] càng thấy* [15:08] thích ngon mà vẫn unix commandline ngon nghẻ thì sang mac mà chơi [15:09] fps bên linux thì cũng ngon hơn [15:09] frame per second? [15:09] tùy driver thôi [15:09] ok :3 [15:09] nói chung là flaky hơn bên win nhiều [15:11] mà game gì bắn súng nặng nặng đó dùng chưa tới 600mb [15:12] nhưng card thì chạy 1gb bật full hiệu ứng [15:12] còn cpu thì lăn tăn có 30 [15:12] trong khi cpu của em cũng hơi ghẻ rồi [15:12] còn bên win thì thôi khỏi [15:13] vài năm nữa driver trên linux mới mong stable được [15:13] còn h thì cứ win thôi [15:14] em cũng hi vọng steam mạnh hơn để linux ké phần [15:15] bên win thì drx thì mạnh thật ko thể chối cãi === khanhpt|Zzz is now known as khanhpt [15:15] nhưng mà game hiện tại chưa có game phổ thông nào cần tới đẳng cấp cao như drx hết [15:16] opengl vẫn là lựa chọn tốt nhất [15:17] đừng nên phán bừa [15:18] opengl xịn đấy [15:18] ko đâu drx 12 vừa ra rồi anh [15:18] nhìn làn môi y chang như mình nhìn ngoài thật luôn [15:18] bạn bị marketing lừa rồi = ) [15:19] y chang như ngoài thật thì chục năm trước người ta cũng làm được rồi [15:19] cái đấy là modelling [15:19] chứ liên quan gì xịn hay không xịn đâu [15:20] d3d12 cho phép truy xuất sâu đến phần cứng hơn nên hiệu năng cao hơn [15:20] https://www.youtube.com/watch?v=CGsJXINz0LQ [15:20] [ DirectX 12: Full Square Enix Techdemo - Witch Chapter 0 [cry] - YouTube ] - www.youtube.com [15:20] no? :v [15:20] it's all the same shit [15:20] nếu hiệu năng cao hơn thì đám CAD nó đã dùng directX rồi [15:21] hiệu năng thì ko cao [15:21] enterprise toàn OpenGL thôi [15:21] KudzuCrab: d3d12 là một cái api thiết kế lại gần như hoàn toàn luôn eh [15:21] nhưng lại đc cái đẹp [15:21] nên card quadro nó mới đắt lòi mắt ra [15:21] lewtds: performance của GPU khó nói lắm [15:21] chuẩn đòi hỏi cứng cao quá [15:21] nhưng phe opengl cũng có vulkan [15:21] sắp ra [15:21] cạnh tranh trực tiếp luôn [15:21] thực ra GPU cũng chỉ là 1 đống stream processor [15:22] thing is [15:22] cả opengl lẫn d3d11 đều có quá nhiều overhead [15:22] như là? [15:22] nên nó mới đẻ ra 2 thằng kia [15:22] they are both heavy abstraction layers [15:23] not really [15:23] OpenGL performance cực cao [15:23] chỉ là nó là -> state machine [15:23] nên không group calling được [15:23] mm [15:23] hình như OpenGL 3 có cái đấy rồi [15:23] dạng store command ở server để process lại [15:23] okay [15:23] đang bận [15:23] tí xử lý sau [15:25] nói chung thì dx12 giờ đang dẫn trc opengl [15:25] nhưng nếu mang đi lập trình thì em chọn opengl [15:25] vì đa hệ điều hành [15:25] 2 cái mục tiêu khác nhau đấy [15:25] + hiệu năng cao [15:25] nhưng giờ nó converge rồi [15:25] vubuntor485: lập trình opengl thực sự là pain in the ass [15:26] vubuntor984: performance của vulkan này [15:26] https://www.youtube.com/watch?v=0Hth4u65zfc [15:26] [ DOTA 2 on Source 2 Engine on Linux using new Vulkan API - YouTube ] - www.youtube.com [15:27] chạy vs card builtin của CPU intel [15:27] bad news is [15:28] code cho cả D3D12 lẫn vulkan đều painful hơn cả 2 api thế hệ trước [15:28] super verbose [15:28] wao [15:29] nhìn đẹp [15:29] vậy thằng này là một thằng riêng nữa [15:29] hay là một api trung gian thôi hả bác [15:29] yup, thay thế opengl [15:30] ồh vậy là thay thế tất cả [15:31] GPU có thể coi là một cái máy tính thứ 2 [15:31] nằm bên trong PC của bạn [15:31] bh muốn vẽ lên đấy [15:31] thì phải có cách để gửi lệnh lên GPU [15:32] mấy cái API này đóng vai trò trung gian [15:32] ok :3 [15:32] lệnh opengl/direct3d cũng k phải là gửi trực tiếp lên GPU đâu [15:32] mà nó sẽ qua driver [15:33] driver translate nó thành một dạng ngôn ngữ nữa của riêng hãng sản xuất [15:33] kiểu dạng compile code C ra binary ý [15:33] ý em hỏi là cái api vulkan [15:33] binary của ARM khác của Intel [15:33] là nó từ opengl ra hay gì [15:33] rồi mới đẩy qua bus đến GPU [15:34] cùng một hội đồng thiết kế [15:34] nhưng nói chung là làm lại gần như hoàn toàn [15:34] ok :3 [15:36] nếu vậy ngon . nhất là thời đại game web dùng opengl [15:36] https://www.youtube.com/watch?v=GzcTUG8RT-M [15:36] [ Vulkan™ API on Intel® Graphics - YouTube ] - www.youtube.com [15:36] còn dùng của win thì làm nguyên cái web chỉ chạy đc mỗi win [15:37] cả vulkan lẫn d3d12 đều "inspired by" AMD Mantle [15:38] nếu vậy là driver muốn hỗ trợ vulkan thì mình phải viết hoặc hãng hỗ trợ phải ko bác [15:38] yup, phải có driver hỗ trợ [15:39] chà chắc em suốt đời cứ opengl 4 hoài luôn quá [15:40] bad news [15:41] là cả vulkan lẫn d3d12 đều khác nhau quá nhiều so với thế hệ trước [15:41] nên nếu đã viết app target 2 cái này [15:41] thì chỉ có thể chạy được trên hệ thống siêu siêu mới :3 [15:42] trừ khi bạn dùng một cái 3d framework nào đó nó abstract lớp 3d api [15:42] để có thể switch ở runtime [15:42] chẵng khác nào tự sát =]]]zzz [15:43] thật ra em nghĩ mấy cái card chạy chỉ chạy đc dx9 [15:43] là do driver của nó giới hạn [15:43] chứ nếu có người viết driver lại thì chắc nó cũng chạy đc dx11 [15:44] hoặc 10 [15:44] yup [15:44] nhưng dx9 và dx10 là một bước nhảy lớn về kiến trúc api [15:44] và yêu cầu một số hỗ trợ đặc biệt từ phía card [15:45] đặc biệt ? tốc độ ? === quydo is now known as ubungu [15:45] GPU hỗ trợ dx10 phải được thiết kế riêng [15:46] em lại nghĩ thì cũng chỉ là tín hiệu bit ko cần thiết kế riêng cứ mạnh là đc [15:46] k đơn giản thế đâu = ) [15:46] nó giống như i386 chuyển sang amd64 ý [15:47] đòi hỏi luồng ra với màn hình đủ tốc độ hay gì bác [15:47] để nó đc đẹp hơn. còn nếu ko đủ luồng thì giật hoặc xấu hơn [15:47] * lewtds k rõ chính xác [15:48] nhưng nhớ k nhầm thì [15:48] dx9 dùng single pipeline [15:48] còn dx10 trở đi là multiple programable pipeline [15:48] s* [15:48] nếu vậy cũng đòi hỏi màn hình nữa [15:49] màn hình thì k [15:49] cắm gì vào chả được [15:49] ko thì bật dx 12 lên nhìn cứ như là dx 9 [15:49] phải chứ bác [15:49] cái full hd [15:49] còn cái ko full nhìn sao net [15:50] lol [15:51] chuẩn rồi mốt em cũng mua con full hd về mới đc . chứ game thiết kế full hd mà mình cứ dùng con crt ghẻ sao đc [15:51] :v :v === khanhpt is now known as khanhpt|Zzz