3 Replies - 876 Views - Last Post: 21 December 2009 - 11:45 AM

#1 Choscura  Icon User is offline

  • D.I.C Lover


Reputation: 449
  • View blog
  • Posts: 2,207
  • Joined: 18-October 08

Questions

Posted 19 December 2009 - 11:30 AM

I have many disparate questions that need relatively short answers and I'd like to have a place where they won't be answered by idiots (eg, blurtit.com, yahoo answers). Since I have no idea where to find this, if it even exists, here's a basic run down of some questions that I hope will be interesting to answer.

1) What is a 'back rub'? I've seen the term used half a dozen places in reference to some 'data massaging' technique (what is that?) that the google search engine uses. As far as I can understand it, it is a skip list that works by depth rather than by cross-section (the reference would be: instead of a plane flying low over a city and hitting the tall buildings one at a time, you start at the top floor of every building like godzilla would and work your way down past all the buildings without the depth you require). I have no idea how accurate (if at all) this analogy is.

2) How, precisely, does a kernel work? is it relatively simple (definitions of data types, sizes, and headers/tails, hardware interface, IO) or more complex than this? what are the discrete parts, how do they work for RISC and CISC systems, or does the RISC/CISC difference even matter for any level in the computer higher than the BIOS? As a subset of this, can you 'spoof' a kernel? Can you compute data or use functions which are compiled for one Kernel by logically changing them to what they should be for another kernel?

3) has anyone ever connected two computers directly without telling either one that it is connected to a computer? Not the internet, I get that, and I'm not asking about master/slave computer setups. What I'm asking is if anybody has ever set up two computers and, eg, connected the two via a USB plug so that both computers show up as external hard drives on the other computer?

4) Where can I find good examples of data structures as they are actually used? Is there a place where I can, eg, find an explanation of how msql works internally?

5) Where can I find information about distributed computing architecture? What about load balancing?

Is This A Good Question/Topic? 0
  • +

Replies To: Questions

#2 Oler1s  Icon User is offline

  • D.I.C Lover
  • member icon

Reputation: 1395
  • View blog
  • Posts: 3,884
  • Joined: 04-June 09

Re: Questions

Posted 19 December 2009 - 01:12 PM

Quote

What is a 'back rub'?
You'll...have to get as an example of a webpage that uses this term. The only connection to Google I can see is BackRub, the original name for the search engine.

Quote

How, precisely, does a kernel work?
There really isn't a concise description of how it works. It's just the name for the lowest level of abstraction, i.e. whatever code deals with hardware issues directly. If you want to understand the details, you do have to do your own extensive research and be prepared to pick up somebooks.

Quote

is it relatively simple (definitions of data types, sizes, and headers/tails, hardware interface, IO) or more complex than this?
No, it's definitely not simple.

Quote

how do they work for RISC and CISC systems, or does the RISC/CISC difference even matter for any level in the computer higher than the BIOS?
Since the difference is at the CPU level, and you are asking questions about the OS kernel, it's not clear if there is a meaningful answer other than irrelevant...

Quote

As a subset of this, can you 'spoof' a kernel?
You'll have to explain what spoofing a kernel means.

Quote

Can you compute data or use functions which are compiled for one Kernel by logically changing them to what they should be for another kernel?
This question...doesn't make sense? Can you use code from one kernel for another by changing it? Well, yeah, but then it wouldn't be the same code, so you wouldn't be copying...? Can you explain what you imagine the programmer doing precisely?

Quote

has anyone ever connected two computers directly without telling either one that it is connected to a computer?
Sure. Computers aren't just the huge bulky desktops and laptops you see. Something like a microwave or a camera has a small computer in it too, albeit doing a whole lot less.

Quote

What I'm asking is if anybody has ever set up two computers and, eg, connected the two via a USB plug so that both computers show up as external hard drives on the other computer?
Maybe, since it all it requires is that one piece of hardware advertise itself as a hard drive.

Quote

Where can I find good examples of data structures as they are actually used?
Probably not in any real place. That's because no one really documents and describes for large programs all the various data structure constructions? You can look at the basic elements or principles online or in books though.

Quote

Is there a place where I can, eg, find an explanation of how msql works internally?
Probably not.

Quote

Where can I find information about distributed computing architecture? What about load balancing?
You'll have to Google extensively, and piece together information from a collection of related discussions and articles. That's because the names are really categories of related concerns, each concern being an enormous topic itself.
Was This Post Helpful? 0
  • +
  • -

#3 Martyr2  Icon User is offline

  • Programming Theoretician
  • member icon

Reputation: 4187
  • View blog
  • Posts: 11,845
  • Joined: 18-April 07

Re: Questions

Posted 19 December 2009 - 01:38 PM

1) "BackRub" was the nickname give to Google in the early days. As for data massaging, it is exactly what it sounds like. Taking data from one system, manipulating, altering, transforming it so that it will be able to be processed in another system. Often times you see this between two systems that were not designed to know about the other but need to work with one another. You might have one system that outputs a report in a comma separated format, but the accounting software that is to show the report might expect its data to be separated by tabs. So you create a "Data massaging" script that will transform the comma separated into tab separated so that the accounting software could use it. You don't change the actual values per say, you most likely change how it is formatted or presented.

2) You can get a lot of information about kernels right from wikipedia... Wikipedia - Kernel Computing Think of it as the foundation for which talks to hardware, but provides functionality for other software to use. An OS is typically built on top of the kernel. Being that it talks to the CPU on behalf of software and such, I would imagine that RISC and CISC make a huge difference on how you write the kernel.

Spoof a kernel? You can't tell the computer to use some kind of replacement fake kernel if that is what you mean. Once you startup it is tied to the kernel to handle everything from the way the software paints your screen using the device drivers of your video card to checking for input. I don't see how you even could.

3) It has to know about the other computer to access its hard drive. It has to know its connected to something, the request to access the drive has to come from somewhere, communicating the information out of the computer has to know where and how to send it to the requester. Now can you make it so that OS doesn't really show it to the user? Perhaps... depending on the OS. But as far as the computer knowing that it is connected to access the hard drive of another computer, it has to. It is not like our computers are a bag of liquid info and just poking a whole in it would cause the data to leak out to another computer.

4) Data structures are used all over the place. Check out our snippets section. We provide code for stacks, queues, classes, structs, arrays etc. All which are data structures. msql as in Microsoft SQL Server or MySQL? SQL Server is proprietary and its source code is locked away in the vaults of Microsoft. If you knew how to build SQL Server, then Microsoft would lose its database business. MySQL on the other hand is open source. You can go to their site and download the source for it. MySQL Downloads

5) Google is your friend in both cases here. Just search for "distributed computing architecture" and "load balancing". You can even find books on the subject at your local library or book store. The two concepts are pretty well talked about and distributed computing is a hot field that is well discussed and covered all over the place.

:)
Was This Post Helpful? 0
  • +
  • -

#4 Choscura  Icon User is offline

  • D.I.C Lover


Reputation: 449
  • View blog
  • Posts: 2,207
  • Joined: 18-October 08

Re: Questions

Posted 21 December 2009 - 11:45 AM

Further questions: I have an idea for a single program but which needs various parts to be programmed in different languages (right now, just C++ and C#). is this possible How is this done, where can I find examples of this?
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1