• What are you working on? April 2012
    2,483 replies, posted
  • [QUOTE=Jookia;35666309]It's a kernel thing. On Linux you need to get the PaX module, which marks the program itself as executable, but the stack, heap, etc as non-executable.[/QUOTE] In windows, using VirtualAlloc with a PAGE_EXECUTEREADWRITE (if you don't want to perform multiple access values) memory constant will allow you to execute arbitrary memory. Coincidentally, this is how you would also have an ELF loader work in Windows. I know you can do the same in posix, but the names of functions that let you do this eludes me at the moment. However, I believe it involves sbrk and mmap with xrw permissions as well.
  • Currently I'm working on a simple todo system. Obviously, it's not too complex. Although, there is a twist to make it special. Instead of registering for an account on the website, you login with your credentials from an IRC network I'm on. The IRC network has an API for web services in Python to allow you to login with the accounts. Anyways, it's written in Python with Flask and it's looking really nice as of now. I'll release it to the public in a bit. It'll have some bugs and features omitted (for the time being.) I'll pass out the IRC server as well so you can register with NickServ and login.
  • [QUOTE=/dev/sda1;35667278]Currently I'm working on a simple todo system. Obviously, it's not too complex. Although, there is a twist to make it special. Instead of registering for an account on the website, you login with your credentials from an IRC network I'm on. The IRC network has an API for web services in Python to allow you to login with the accounts. Anyways, it's written in Python with Flask and it's looking really nice as of now. I'll release it to the public in a bit. It'll have some bugs and features omitted (for the time being.) I'll pass out the IRC server as well so you can register with NickServ and login.[/QUOTE] Why, though?
  • [QUOTE=geel9;35667327]Why, though?[/QUOTE] How about you give me three reasons why not? I'm doing it to A) Further my Python and Flask skills B) Test this API for any bugs C) Learn SQlite. Is there a problem?
  • [QUOTE=/dev/sda1;35667413]How about you give me three reasons why not? I'm doing it to A) Further my Python and Flask skills B) Test this API for any bugs C) Learn SQlite. Is there a problem?[/QUOTE] My question is answered. It wasn't hostile. Why did you make it hostile?
  • [QUOTE=supersnail11;35667644]Why do you censor out the name of the API?[/QUOTE] I'll post it in it's own thread a bit later when it's ready to be officially released.
  • [QUOTE=/dev/sda1;35667278]Currently I'm working on a simple todo system. Obviously, it's not too complex. Although, there is a twist to make it special. Instead of registering for an account on the website, you login with your credentials from an IRC network I'm on. The IRC network has an API for web services in Python to allow you to login with the accounts. Anyways, it's written in Python with Flask and it's looking really nice as of now. I'll release it to the public in a bit. It'll have some bugs and features omitted (for the time being.) I'll pass out the IRC server as well so you can register with NickServ and login.[/QUOTE] Why not use a text file?
  • [QUOTE=Jookia;35667703]Why not use a text file?[/QUOTE] [QUOTE=/dev/sda1;35667413]How about you give me three reasons why not? I'm doing it to A) Further my Python and Flask skills B) Test this API for any bugs C) Learn SQlite. Is there a problem?[/QUOTE]
  • [QUOTE=geel9;35667444]My question is answered. It wasn't hostile. Why did you make it hostile?[/QUOTE] I can't think of a situation where that doesn't sound hostile. "Hey guys, I made this mandelbrot renderer" "Why? (Doesn't the world already have enough mandelbrot set viewers?)" "Hey guys, I made this line-following robot" "Why? (What purpose does that serve?)" You don't need a reason to have fun.
  • [QUOTE=ROBO_DONUT;35667812]I can't think of a situation where that doesn't sound hostile. "Hey guys, I made this mandelbrot renderer" "Why?" "Hey guys, I made this line-following robot" "Why?" You don't need a reason.[/QUOTE] I was curious as to why he used IRC identification as opposed to the traditional method.
  • [QUOTE=geel9;35667824]I was curious as to why he used IRC identification as opposed to the traditional method.[/QUOTE] You weren't very specific :v:
  • [QUOTE=ROBO_DONUT;35667838]You weren't very specific :v:[/QUOTE] It was the only really "odd" thing about his post, I assumed it would be obvious.
  • I'm amazed by what a difference a quality random function can make over a shitty one. Before [IMG]http://4.bp.blogspot.com/-VpS-ZpU1w7w/T5Nx4iNZJYI/AAAAAAAAAdE/heGwYHbhBwU/s1600/FIXED.png[/IMG] After [IMG]http://1.bp.blogspot.com/-4186sk7vW88/T5ODamZ5lBI/AAAAAAAAAdQ/Tmx3Pc1Xbzc/s1600/better_random_lit.png[/IMG] The frame rates are actually better as well even though the pictures would make you think otherwise, there are more photons in the second photo.
  • [QUOTE=Jookia;35666309]It's a kernel thing. On Linux you need to get the PaX module, which marks the program itself as executable, but the stack, heap, etc as non-executable.[/QUOTE] it's actually a cpu thing
  • So I reached a road block in my program, and so to take a break I wrote a short paper on Hierarchical Data Structures. [url]https://docs.google.com/document/d/1KXHLrpDVXhmm3HJQ5P3iGgJlx2Qen7K6H6tcFlzmFqI/edit[/url] Figured you guys might be interested in it. Most of that is based off what I knew off hand by memory so there may be errors in it. Infact it may be completely wrong. It also features actual pictures from the program I'm working on, so enjoy and try not to tear me a new one if it turns out I'm actually a complete retard when it comes to hierarchical data structures.
  • [QUOTE=swift and shift;35668392]it's actually a cpu thing[/QUOTE] Do CPUs really have a concept of the difference between an executable program and the program's data?
  • [QUOTE=Jookia;35668482]Do CPUs really have a concept of the difference between an executable program and the program's data?[/QUOTE] yes
  • [QUOTE=Jookia;35668482]Do CPUs really have a concept of the difference between an executable program and the program's data?[/QUOTE] No, but pages can be marked writable or not, and executable or not. The OS decides which pages should have which settings, but the CPU enforces them. Trying to write to a read-only page, or execute a non-executable page, causes the CPU to invoke a handler in the OS so it can kill the offending process. Typcally, the pages that contain a program's code are marked read-only and executable, and the pages that contain data are writable but non-executable.
  • [QUOTE=Wyzard;35668541]No, but pages can be marked writable or not, and executable or not. The OS decides which pages should have which settings, but the CPU enforces them. Trying to write to a read-only page, or execute a non-executable page, causes the CPU to invoke a handler in the OS so it can kill the offending process. Typcally, the pages that contain a program's code are marked read-only and executable, and the pages that contain data are writable but non-executable.[/QUOTE] Makes sense.
  • [QUOTE=Jawalt;35668407]Is that a path/ray tracer? It looks.... really weird.[/QUOTE] It's a [URL="http://en.wikipedia.org/wiki/Photon_mapping"]photon mapper[/URL] without irradiance caching / final gathering because I've only got 10 weeks to go from no OpenCL knowledge to working real-time example and it's currently week 7 :)
  • [QUOTE=geel9;35667327]Why, though?[/QUOTE] With that attitude, why anything?
  • [img]http://i.imgur.com/wkJxJ.gif[/img] get a load of this deep combat, i feel like i'm making a muppet simulator
  • [QUOTE=Ehmmett;35668820]With that attitude, why anything?[/QUOTE] [QUOTE=Kopimi;35668845]why make a primitive UI library limited to XNA[/QUOTE] [url]http://facepunch.com/threads/1174646?p=35667824&viewfull=1#post35667824[/url]
  • [QUOTE=Kopimi;35668845]why make a primitive UI library limited to XNA[/QUOTE] because it's useful