Usecase idea.
Usecase idea.
I just had an idea of an OS that treats users in sligtly different way than other OSes do. It's a modification of mainframe <-> terminal model. Imagine one powerful computer in the house shared between family members. Not how it is done now, over the network, but directly. Each user has it's own display, keyboard mouse and free USB port. These devices being connected directly to the computer without any network latency or overhead. This way a family could make use of high core count CPU based machine much more efficiently. There could be some extra hardware needed. Like long distance USB, HDMI or DP transceivers. What do you think about such model?
Sorry If I don't make much sense, but I am a little bit drunk today But I also didn't want to forget this idea by tomorrow.
Sorry If I don't make much sense, but I am a little bit drunk today But I also didn't want to forget this idea by tomorrow.
Re: Usecase idea.
Just use Ethernet/Wifi and build a high performance network display/event protocol on UDP.pvc wrote:I just had an idea of an OS that treats users in sligtly different way than other OSes do. It's a modification of mainframe <-> terminal model. Imagine one powerful computer in the house shared between family members. Not how it is done now, over the network, but directly. Each user has it's own display, keyboard mouse and free USB port. These devices being connected directly to the computer without any network latency or overhead. This way a family could make use of high core count CPU based machine much more efficiently. There could be some extra hardware needed. Like long distance USB, HDMI or DP transceivers. What do you think about such model?
Sorry If I don't make much sense, but I am a little bit drunk today But I also didn't want to forget this idea by tomorrow.
CuriOS: A single address space GUI based operating system built upon a fairly pure Microkernel/Nanokernel. Download latest bootable x86 Disk Image: https://github.com/h5n1xp/CuriOS/blob/main/disk.img.zip
Discord:https://discord.gg/zn2vV2Su
Discord:https://discord.gg/zn2vV2Su
Re: Usecase idea.
That's why I said "Not how it is done now, over the network, but directly." I imagine, streaming 5x HD displays over your typical house network wouldn't be so easy. Even 10Gbps link would easily become overwhelmed.
-
- Member
- Posts: 5568
- Joined: Mon Mar 25, 2013 7:01 pm
Re: Usecase idea.
I don't think it is a bad idea. But I don't know if it is really desirable. It probably depends on what it costs in comparison to the cost of several computers.pvc wrote:I just had an idea of an OS that treats users in sligtly different way than other OSes do. It's a modification of mainframe <-> terminal model. Imagine one powerful computer in the house shared between family members. Not how it is done now, over the network, but directly. Each user has it's own display, keyboard mouse and free USB port. These devices being connected directly to the computer without any network latency or overhead. This way a family could make use of high core count CPU based machine much more efficiently. There could be some extra hardware needed. Like long distance USB, HDMI or DP transceivers. What do you think about such model?
Sorry If I don't make much sense, but I am a little bit drunk today But I also didn't want to forget this idea by tomorrow.
And the general trend nowadays goes in the contrary direction (smartphones and internet of things). Which doesn't mean it's a bad idea just because of that.
Also I don't know how well a single computer supports multiple graphics output, for example 4 or more monitors.
Greetings
Peter
Re: Usecase idea.
@PeterX I am using 4 displays right now with cheap RX570. And its manual says it supports 5.
Re: Usecase idea.
@Octocontrabass Ohh, so it has been already done. Ok, I am going to do experimenting with it.
Re: Usecase idea.
I hope you're having fun with it.
X Windows is capable of it. $DISPLAY can contain server:display.screen (e.g. rix:5.0) where each display is entirely isolated from each other display and has its own mouse and keyboard. I'm mainly mentioning it out of my own nostalgia; I really wanted to try it in the late 90s, but XFree86 on Linux didn't seem to be capable of loading drivers for multiple cards, or something. What I really wanted was multi-screen. At the time, it was similar in that each screen was also isolated in terms of display resolution and color, but the mouse pointer would go on all the screens in any given display. There was no Xinerama or anything like that in those days.
Getting off the topic a little...
The first window system for Unix was similar, but its terminals had some processing power of their own. It relied on uploading code to the terminal so each user basically had their own copy of the window system. There was a demo of animations in dragable windows all the way back in 1982! But I'm sure it relied on uploading the animation frames to the terminals. http://doc.cat-v.org/bell_labs/blit/
Plan 9 was an attempt to go a step beyond this by letting the user use the power of their local terminal, connecting to "cpu servers" to run high-power jobs. With a single central file server, every user got their own home directory and profile scripts no matter which machine they were at. I think it was Dennis Ritchie who got into the habbit of carrying around floppy disks with a Plan 9 bootloader. Wherever he was, if he wanted to use a computer he'd put a floppy into a free machine and it would boot Plan 9 over the network. It's not quite the same as multiseat but achieves some of the same goals. Plan 9 system administration is network-wide too, in part because of the single shared filesystem.
X Windows is capable of it. $DISPLAY can contain server:display.screen (e.g. rix:5.0) where each display is entirely isolated from each other display and has its own mouse and keyboard. I'm mainly mentioning it out of my own nostalgia; I really wanted to try it in the late 90s, but XFree86 on Linux didn't seem to be capable of loading drivers for multiple cards, or something. What I really wanted was multi-screen. At the time, it was similar in that each screen was also isolated in terms of display resolution and color, but the mouse pointer would go on all the screens in any given display. There was no Xinerama or anything like that in those days.
Getting off the topic a little...
The first window system for Unix was similar, but its terminals had some processing power of their own. It relied on uploading code to the terminal so each user basically had their own copy of the window system. There was a demo of animations in dragable windows all the way back in 1982! But I'm sure it relied on uploading the animation frames to the terminals. http://doc.cat-v.org/bell_labs/blit/
Plan 9 was an attempt to go a step beyond this by letting the user use the power of their local terminal, connecting to "cpu servers" to run high-power jobs. With a single central file server, every user got their own home directory and profile scripts no matter which machine they were at. I think it was Dennis Ritchie who got into the habbit of carrying around floppy disks with a Plan 9 bootloader. Wherever he was, if he wanted to use a computer he'd put a floppy into a free machine and it would boot Plan 9 over the network. It's not quite the same as multiseat but achieves some of the same goals. Plan 9 system administration is network-wide too, in part because of the single shared filesystem.
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
Re: Usecase idea.
@pvc, that's what my OS is eventually going to do . In my case, I am doing it as a good for colleges which would need many computers usually, but instead they could have in server and monitors, keyboards, and mice.
Re: Usecase idea.
College? You mean 20-30 users at once? Eeeesh! Performance will be horrible! Won't it? I might be making wild assumptions, but I think RAM contention will be an insurmountable obstacle to decent perfomance. Have you done any calculations on that? You'll need a rough system design and knowledge of the relevant hardware latencies and bandwidths to make the calculations. Come to think of it, that would be a good way to start. You can refine your OS design before you write any code. If you find there's no good way to do it, you have useful knowledge and skills to apply to your next OS design.nexos wrote:@pvc, that's what my OS is eventually going to do . In my case, I am doing it as a good for colleges which would need many computers usually, but instead they could have in server and monitors, keyboards, and mice.
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
- Schol-R-LEA
- Member
- Posts: 1925
- Joined: Fri Oct 27, 2006 9:42 am
- Location: Athens, GA, USA
Re: Usecase idea.
This thread discusses similar proposals in the past.
Also, Linus Sebastian has experimented with exactly such a setup for his home automation, IIUC.
Also, Linus Sebastian has experimented with exactly such a setup for his home automation, IIUC.
Last edited by Schol-R-LEA on Wed Nov 18, 2020 10:25 am, edited 1 time in total.
Rev. First Speaker Schol-R-LEA;2 LCF ELF JAM POEE KoR KCO PPWMTF
Ordo OS Project
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.
Ordo OS Project
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.
Re: Usecase idea.
Even a high end graphics board isn't going to be able to drive 5+ HD displays and certainly HDMI isn't rated for cable lengths over a metre or so... Ultimately each terminal is going to need to be essentially a fully featured computer... A cheap RaspberryPI and a nice high speed ethernet is the only way forward...pvc wrote:That's why I said "Not how it is done now, over the network, but directly." I imagine, streaming 5x HD displays over your typical house network wouldn't be so easy. Even 10Gbps link would easily become overwhelmed.
CuriOS: A single address space GUI based operating system built upon a fairly pure Microkernel/Nanokernel. Download latest bootable x86 Disk Image: https://github.com/h5n1xp/CuriOS/blob/main/disk.img.zip
Discord:https://discord.gg/zn2vV2Su
Discord:https://discord.gg/zn2vV2Su
-
- Member
- Posts: 5568
- Joined: Mon Mar 25, 2013 7:01 pm
Re: Usecase idea.
That depends on the card. Here's one designed to drive six displays. (You may be able to drive even more displays by connecting multiple displays to a single DisplayPort output, but the specifications aren't very clear about whether that's supported.)bloodline wrote:Even a high end graphics board isn't going to be able to drive 5+ HD displays
I've found passive HDMI cables up to 30ft/9m that are rated for 60Hz 4k, although that's certainly pushing the limits of the technology. Active cables can be much longer than that, if you're really desperate to spend your money.bloodline wrote:and certainly HDMI isn't rated for cable lengths over a metre or so...
Re: Usecase idea.
I'm thinking of a server with 100s of CPUs and a couple terabytes of RAM. It could even be a distributed system. It would be cheaper probably (less computers, just a few very pricy computers).eekee wrote:College? You mean 20-30 users at once? Eeeesh! Performance will be horrible! Won't it? I might be making wild assumptions, but I think RAM contention will be an insurmountable obstacle to decent perfomance. Have you done any calculations on that? You'll need a rough system design and knowledge of the relevant hardware latencies and bandwidths to make the calculations. Come to think of it, that would be a good way to start. You can refine your OS design before you write any code. If you find there's no good way to do it, you have useful knowledge and skills to apply to your next OS design.nexos wrote:@pvc, that's what my OS is eventually going to do . In my case, I am doing it as a good for colleges which would need many computers usually, but instead they could have in server and monitors, keyboards, and mice.
Re: Usecase idea.
Okay. I know nothing about how such a system handles ram contention, so I'll leave it at that. It's funny you should mention distributed systems. Before the term was defined as narrowly as it is today, Plan 9 was called a distributed system. I realise now I've forgotten all about the details of distributed systems.nexos wrote:I'm thinking of a server with 100s of CPUs and a couple terabytes of RAM. It could even be a distributed system. It would be cheaper probably (less computers, just a few very pricy computers).
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie