V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  secondwtq  ›  全部回复第 28 页 / 共 123 页
回复总数  2446
1 ... 24  25  26  27  28  29  30  31  32  33 ... 123  
2022-01-26 20:26:32 +08:00
回复了 rv54ntjwfm3ug8 创建的主题 Linux policykit 的作用是什么?直接 remove 会不会更安全?
大概半年前了解过一下,故事是这样的:当时闲来无事在折腾进程管理(主要目标:把 Chrome 等做得比较差的软件的无用进程全都集中到一个核心去并设置较低优先级,然后专门腾出 1-2 个核运行克劳塞维茨等世界一流软件并赋予较高优先级)。发现一个奇怪的事情:在默认的 ulimit 设置下我自己的用户权限是不允许给进程设置负数 nice 的,但是 pulseaudio 等进程,跑在我自己的用户下,却一直是负数优先级。没有用 root ,好像也没有什么特殊的 capability 。

仔细看了一下这东西和另一个叫做 rtkit-daemon 的进程有关联,这个进程是跑在 rtkit 用户下,理论上也没有干这个的权力。去瞅了一眼 rtkit 源码,它这个 daemon 启动时会设置一些 capability 来获取随便设置优先级的权限,PulseAudio 等初始化时会通过 DBus 会请求 rtkit 照顾它一下,rtkit 则会再 DBus 请求 PolicyKit 对请求的客户端进行政审判断是否符合提拔的条件( https://github.com/heftig/rtkit/blob/c295fa849f52b487be6433e69e08b46251950399/rtkit-daemon.c#L1111 ),如果可以就安排上。具体条件是写在一个配置文件里的。

这里面 polkit 的作用是帮助其客户端(即 rtkit )读取这个配置文件,并且根据其定义的规则判断这个进程的背景够不够硬,r 然后告诉 rtkit 。虽然这个配置文件写的好像是全都 pass ... 配置一般是 XML ( https://github.com/heftig/rtkit/blob/c295fa849f52b487be6433e69e08b46251950399/org.freedesktop.RealtimeKit1.policy ),但是也支持简单的 JavaScript 脚本。我系统里还有一堆的规则,虽然好像也都是类似八股的东西没啥实际作用。你说脚本?还没见哪个包用过。
2022-01-26 19:33:50 +08:00
回复了 qdwang 创建的主题 问与答 关于 GPL 协议的一些疑问
@qdwang #6 根据我的了解,你说的第一种情况也没法保护。
GPL 保护的是具体实现不是 idea 。用 cleanroom 的方式还是可以使用你的算法。
使用专利可能能保护算法,但好像总的来说实践起来还是比较困难,尤其是你很难知道别人到底是怎么实现的情况下( GPL 也存在一样的问题)。

一个例子:本世纪初 Thomas W. Sederberg 等人提出了 T-Spline ,这是一种三维表面的表示方法,据说结合了 NURBS 和细分曲面的优点。paper 发出来没多久这群人就商业化了这个算法并申请了专利,后来公司被 (隔壁好像正在招人的) Autodesk 收购。过了几年 Autodesk 把这东西放到了自家的 Fusion 360 上,并且停止了其他软件(如 Rhino )的 T-Spline 插件更新。直到现在也没有其他地方实现 T-Spline 。
2022-01-25 19:50:51 +08:00
回复了 vngghgfjnff 创建的主题 程序员 求推荐稳点的硬盘,两块希捷酷鱼 4T 同时挂了
@vngghgfjnff 你不会真按这个买吧 ...
2022-01-25 19:04:19 +08:00
回复了 vngghgfjnff 创建的主题 程序员 求推荐稳点的硬盘,两块希捷酷鱼 4T 同时挂了
2022-01-25 02:40:31 +08:00
回复了 Cbdy 创建的主题 游戏 开源软件很好,有没有开源游戏呢? Minecraft?
草,有一个忘了列了,Naval War:Arctic Circle ,Paradox 发行的一个海战游戏,其*服务端*源码在发布不久之后放出来了: https://forum.paradoxplaza.com/forum/threads/naval-war-arctic-circle-source-code.728920

之所以说这个是因为这帖子里面有这么一句话:“Sadly the frontend stuff is protected by stuff that we can not control.”
不知道他具体指的是什么“stuff”,但是现在一流的游戏引擎不仅本身规模很大,依赖也很多,不少依赖,很多开发使用的中间件是专有的。这样的一个项目要做开源本身就是很复杂的事情。
也许之后类似命令与征服和家园的事情会越来越少。

还忘了个奇葩的,波斯王子初版,汇编写的 https://github.com/jmechner/Prince-of-Persia-Apple-II
( Photoshop 初版源码也有,貌似也会汇编+Pascal )
2022-01-25 02:20:37 +08:00
回复了 Cbdy 创建的主题 游戏 开源软件很好,有没有开源游戏呢? Minecraft?
基于社区的开源游戏基本有一个共性:美工比较拉
实际上我个人观察社区里面为爱发电做美工做得好的不在少数(我当年差点也能算半个),但是 somehow 这帮人跟程序员就走不到一块去 ... 另外还有一个客观原因是商业游戏都是全职开发+(貌似)完善的项目管理,有一个明(会)确(跳)的(票)工期,开源游戏一开就是巨坑也没几个人搞,一般都拖很长,本来美工技术就一般,等能玩的时候 graphics 早就落伍了。
还有一个就是各种 clone 很多,原创 IP 不多。
总之可以简单理解为除了写代码啥都不会 ...

还有一种比较传统的“开源游戏”是按照闭源游戏的套路做的,只不过源码开源。这个还没那么偏科

策略游戏是 PC 的强项( Console 技术上根本没法搞,圈子也基本都是硬件厂 /游戏厂精神股东,压根没人在乎什么开源,你跟他们提个模拟器都得给喷死,自己不吵起来就不错了,实在玩不到一块去),比如现在几大老 RTS 的 Clone 基本齐活了:
老命令与征服: https://github.com/OpenRA/OpenRA 我个人觉得是 clone 里面的标杆项目
老星际争霸: https://github.com/Wargus/stratagus
老帝国时代: https://github.com/SFTtech/openage https://github.com/0ad/0ad
老横扫千军: https://github.com/spring/spring

其他策略类:
文明: https://github.com/freeciv/freeciv
Master of Orion: https://github.com/freeorion/freeorion
过山车大亨: https://github.com/OpenRCT2/OpenRCT2
运输大亨: https://github.com/OpenTTD/OpenTTD
Panzer General: https://github.com/nicupavel/openpanzer

其他 Clone:
Terraria: https://github.com/raxod502/TerrariaClone
极品飞车: https://github.com/OpenNFS/OpenNFS
辐射: https://github.com/BlackPhrase/SugarBombEngine
上古卷轴: https://github.com/OpenMW/openmw
Oolite: https://github.com/OoliteProject/oolite
re3: 搞得是老 GTA 引擎,结果最近 T2 就跟他怼上了,DMCA 发了貌似不只一次 ...
做 WOW 和 MC 服务器的貌似也有不少,不单独找了

有一些游戏一开始是闭源游戏,但是后来开源了。有些游戏一开始就是开源的。并非所有我都了解,所以放一块了:
最典型的是 id 早期作品。id 同时也是 Linux Gaming 的早期 pioneer 之一,貌似曾经还有发布 Linux 版本但声明不提供支持之类的事情。后来可能条件不允许继续这么做了。
依然是老命令与征服(跟上面的比一比,微软哪天收了 T2 吧 ...): https://github.com/electronicarts/CnC_Remastered_Collection
Star Wars Jedi Knight: Jedi Academy: https://github.com/grayj/Jedi-Academy
Star Wars Jedi Knight II: Jedi Outcast: https://github.com/grayj/Jedi-Outcast

有些游戏是彻底的开源模式,我依然没办法仔细分辨,简单列一下:
The Battle for Wesnoth: https://github.com/wesnoth/wesnoth
Unknown Horizons: https://github.com/unknown-horizons/unknown-horizons
Endless Sky: https://github.com/endless-sky/endless-sky
Red Eclipse: https://github.com/redeclipse/base
VASSAL 桌游引擎: https://github.com/vassalengine/vassal
AssaultCube: https://github.com/assaultcube/AC
Orbiter: https://github.com/orbitersim/orbiter

其他有名的像 Mindustry ,CDDA ,osu! 上面说过了

上面的应该都算某种意义上的“开源游戏”,还有一种是 source-available/shared source 的,指由于 licence 不是开源的 licence 等原因并非 de jure 的“开源”,但是由于游戏是个纯 2C 的东西,开发者很难 enforce 这个事所以基本等于 de facto 开源了(我个人定义里面“开源”的主要意义在于“学习与修改的自由”)。
还是老 RTS ,家园 1 的源码以 shared source 的形式放出来了。自己去找吧 ...
Space Engineers: https://github.com/KeenSoftwareHouse/SpaceEngineers
Allegiance ,看上去挺奇葩的游戏,因为开发者挂名是 Microsoft Research ... 和 .NET 一样,一开始是 shared source ,后来直接开源了
上面说的 WWW 实际上是 shared source 不是 open source 。

太多了一个个列列不过来,几个有用的地方:
https://libregamewiki.org/Main_Page
https://osgameclones.com
https://en.wikipedia.org/wiki/List_of_commercial_video_games_with_available_source_code
2022-01-25 01:18:55 +08:00
回复了 zeronofreya 创建的主题 问与答 blender 中形态键能传递吗?
动画不是我的 expertise 所以不是很熟悉
不过你这个,我觉得你给身体做的动画是给身体的骨骼的,没法直接放到别的模型上面。说白了建模也好,编程也好,就是一种 fancy 的告诉计算机“我想要什么”的过程,在身体模型里面是通过调骨骼动画来完成的,但是这个数据并不能直接告诉计算机衣服该怎么动。
所以我觉得你谷歌的关键词不应该是怎么“传递”动画,而是怎么给角色做衣服
2022-01-25 01:12:01 +08:00
回复了 zeronofreya 创建的主题 问与答 blender 中形态键能传递吗?
发错地方系列 ...
2022-01-17 19:23:09 +08:00
回复了 kgdb00 创建的主题 C 如何使用 binutils 的 ld 程序手动静态链接一个 relocatable (.o) 文件?
GCC 和 Clang 都可以通过使用 -### 参数显示编译过程中运行的命令
2022-01-16 19:58:30 +08:00
回复了 MajestySolor 创建的主题 Windows 从 win11 重装回 win10,整个人都获得了新生
@rbw 祖宗之法不可变(
2022-01-16 17:00:36 +08:00
回复了 DinnyXu 创建的主题 MacBook Pro 大家使用 M1 感受如何?
> 我的理想状态就非常简单,第一 IDEA 写代码的时候,不要卡顿,一个类有 1000 多行代码的时候,滚动不要有明显延迟。

有梦想很正常,但是不适合放在这个帖子里。这个和硬件没关系。
2022-01-15 15:12:11 +08:00
回复了 abysmalIQ 创建的主题 计算机 如何让 PC/Mac“彻底忽略”一台连接着的显示器?
软件层面的话,楼主可以看看两个系统有没有控制启用 /禁用显示器的 API ,先做到使用程序管理显示器。
然后显示器可以通过 I2C 控制输入源,这样可以不用硬件按键切换,把两个系统连到一个网络上,写个程序分别跑在上面,接收到请求时就操作系统 API 并发送 I2C 信号。然后绑个快捷键。
或者淘宝上有几个键的小键盘卖,可以拿来做单独的控制键。
2022-01-15 03:44:10 +08:00
回复了 dangyuluo 创建的主题 Linux 为什么编译起来 aarch64 比 x86_64 要慢,单核 benchmark 却相反
@dangyuluo #43
1640 还比较科学,跟我这个数据比差不多就是频率的比利关系

我感觉你这个 benchmark 测试的主要是 sqrt 和 idiv 的性能 (源码应该是 https://github.com/akopytov/sysbench/blob/df89d34c410a2277e19f77e47e535d0890b2029b/src/lua/prime-test.lua#L15-L30 ),SKL 的 idiv 确实不太行。LuaJIT 要是搞个库进来可能会好一点(或者换 ICL 之后的 u )。

另外 Docker 性能损失这么大是什么原理,设置了 cpu-quota 了?
2022-01-15 03:26:55 +08:00
回复了 dangyuluo 创建的主题 Linux 为什么编译起来 aarch64 比 x86_64 要慢,单核 benchmark 却相反
重新下了个 VTune ,进去一个大大的 div %rcx 真是开幕雷击 ...

可能能解释 #37 的数据,因为在某乎上对 #37 有印象,用的应该是 AMD 。然后翻一下 uops.info 就知道了:
https://uops.info/table.html?search=div&cb_lat=on&cb_tp=on&cb_uops=on&cb_ports=on&cb_SKL=on&cb_ZEN3=on&cb_measurements=on&cb_doc=on&cb_base=on
https://www.realworldtech.com/forum/?threadid=200021&curpostid=200021

但是楼主的数据还是很神秘。不过他这个貌似是 LuaJIT 给 JIT 出来的,究竟拉出什么代码还不一定呢
2022-01-15 02:38:59 +08:00
回复了 dangyuluo 创建的主题 Linux 为什么编译起来 aarch64 比 x86_64 要慢,单核 benchmark 却相反
另外我这个数据跟#37 的比也有点离谱 ... 感觉这个 benchmark 就不太靠谱
整个 GB5 或者 Phoronix 不行么,再不济 Blender Benchmark 也行
2022-01-15 02:36:49 +08:00
回复了 dangyuluo 创建的主题 Linux 为什么编译起来 aarch64 比 x86_64 要慢,单核 benchmark 却相反
同怀疑 9900k 数据有问题,我这 8500:

sysbench cpu --num-threads=1 run
sysbench 1.0.20 (using system LuaJIT 2.0.5)
...
Prime numbers limit: 10000
...
CPU speed:
events per second: 1378.00
2022-01-14 02:00:44 +08:00
回复了 zzwyh 创建的主题 前端开发 node 在前端当中的重要性,是否每个前端都应该学习
@3dwelcome #55
> 在 figma 里面,canvas 上的单个 rect ,内部肯定也是一个元素对象。就是没有浏览器 BOM 对象一一对应,这样叫虚拟 DOM ,也都习惯了。

你看看你这个定义推广开来会发生什么事情:
我的头像是用 C4D 搞的 3D 模型,现在在 Three.js 里面渲染出来,因为是在浏览器里面,所以里面的一个 Box 是个 DOM
我用 Unity 做个游戏,里面有根草,哪怕这玩意是 GPU Instancing 出来的,因为可以跑在浏览器里面,也叫 DOM 。
你这个回复每一段有两行,每一行在浏览器里面都会有一个内部的对象来做排版,虽然你没办法用 DOM API 直接操作它,但是因为它在浏览器内部有个东西,所以叫 DOM 。

如果他们不是在浏览器里面,那该叫 mesh 就叫 mesh ,该叫 instance 叫 instance ,该叫 line 叫 line ,就因为生在了浏览器里面,所以通通叫 DOM 。

这 就 是 前 端

> 放弃 JS ,选择 WASM 写代码就是为了舒心。说运行速度什么,那都是次要的。
你是不是忘了有 WASM 之前前端是怎么玩的了 ... JS 不好用没拦着你用 TypeScript ,Reason ,Fable ,PureScript ,Scala.js ,Elm ,Kotlin ,Dart 啊。这和 WASM 依然没有必然关系。
2022-01-13 13:43:23 +08:00
回复了 zzwyh 创建的主题 前端开发 node 在前端当中的重要性,是否每个前端都应该学习
@3dwelcome #37
CanvasRenderingContext2D 或者 WebGLRenderingContext 也算是 native DOM 对象啊,操作这个也是要过 JS ,只不过不操作 DOM 元素而已。
而且你这么做不就是在 canvas 上搞 DirectUI 么 ... 第一你这也不叫 DOM ,UI 框架里面的元素就叫 Widget/Element/View whatever ,但是一般不会叫 DOM ,因为广义地来说它是“document model”,最开始 Web 就是文档+链接这么一个 idea ,所以叫“document”,只不过后来被用来做 application 了(这是很糟糕的事情,不过前端很多东西都这么过来的),正经做 UI 不会做出“DOM”这么一个东西。狭义的来说“DOM”是一套标准,不符合这套标准不能叫 DOM 。你看 Python 里面的 xml.dom ,接口和浏览器里的 DOM 是差不多的。

第二你这个不只 WASM 能做,没必要强调 WASM (你后来说的什么“真正的工程”可能是 valid point ,但是和这一点无关)。因为这里真正重要的是你这个 UI 框架的架构设计和组件实现质量,这些是不限语言的,JS 早就玩过了: https://github.com/Flipboard/react-canvas
当然考虑到性能问题的话,WASM 确实可以做到比 JS 更高的性能,但是并不是说你把一个 JS 程序重写成 WASM 性能就一定更高。而且你要“发挥全部潜力”,那 WASM 局限性也很大。这些问题这个帖子里面吵过了: https://v2ex.com/t/804821

Figma 貌似是 React+ReactDOM 做 UI ,然后 WASM+canvas 做渲染。因为 React 这一套经过框架的封装和长期填坑之后已经是很成熟高效的做 UI 的方案,而 Figma 的工作区本来就是一个 literally 的 canvas ,这叫在合适的地方用合适的技术。(当然我做可能会把 ReactDOM 踢掉,因为你应该也看得出来我也不喜欢 native DOM ,但是我觉得在 WASM 里面搞 UI 框架的工作量会远超搞编辑器的工作量 ...)
2022-01-13 13:14:00 +08:00
回复了 youyoumarco 创建的主题 互联网 想知道大家对现在“元宇宙”怎么看
@HackerJax 目前来看,元宇宙不如原神。
2022-01-13 03:56:33 +08:00
回复了 zzwyh 创建的主题 前端开发 node 在前端当中的重要性,是否每个前端都应该学习
@3dwelcome 我就是不明白你这个“DOM”指的是啥 ...
前端说 DOM 指的就是浏览器 native 的 DOM 对象。还有一个为了减少 native DOM 对象操作搞的虚拟 DOM 。不过这俩是分得很清楚的,说 DOM 就是 DOM ,说虚拟 DOM 就是虚拟 DOM 。WASM 里面也可以做虚拟 DOM ,但是要做“DOM”必须过 JS 。
1 ... 24  25  26  27  28  29  30  31  32  33 ... 123  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2819 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 02:56 · PVG 10:56 · LAX 19:56 · JFK 22:56
Developed with CodeLauncher
♥ Do have faith in what you're doing.